相关文章推荐
玩命的脸盆  ·  2023年6月16日 ...·  7 月前    · 
干练的羽毛球  ·  XCUIElementType ...·  1 年前    · 
想发财的菠萝  ·  JAVA ...·  1 年前    · 

sns.regplot sns.distplot 这两个图形的使用场景记录。

sns.regplot 用来比较两个变量的关系,是否符合线性回归。一般用来比较特征变量和标签变量上。

sns.distplot 是直方图和核密度图( sns.kdeplot )的结合。用来看单个连续型变量的分布。

顺便说下直方图和条形图区别:

直方图:先分箱,然后计算每个分箱频数的数据分布。直方图一般用于数字特征(连续型);
条形图一般用于类别特征,条形图有间距,直方图没有。

先用小费数据集画出图形。

# 导入包
import seaborn as sns
from pandas import Series,DataFrame
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
# 拿到小费数据集
tips = sns.load_dataset('tips')
# 数据介绍:total_bill列为消费总金额;tip列为小费金额;sex列为顾客性别;smoker列为顾客是否抽烟;day列为消费的星期;time列为聚餐的时间段;size列为聚餐人数
# 查看前5行数据
tips.head()
plt.figure(figsize=(14, 4))  # 指定绘图对象宽度和高度
ax=plt.subplot(1,3,1)
sns.regplot(x='total_bill', y='tip', data=tips, ax=ax, 
            scatter_kws={'marker':'.','s':3,'alpha':0.3},
            line_kws={'color':'g'});
plt.xlabel('total_bill')
plt.ylabel('tip')
ax=plt.subplot(1,3,2)
sns.regplot(x='total_bill', y='size', data=tips, ax=ax, 
            scatter_kws={'marker':'.','s':3,'alpha':0.3},
            line_kws={'color':'k'});
plt.xlabel('total_bill')
plt.ylabel('size')
ax=plt.subplot(1,3,3)
sns.distplot(tips['total_bill'])
plt.xlabel('total_bill')
plt.show()

图一是两个连续型变量比较。total_bill 直接拟合成一条直线,tip 是散点图。但就这个例子图形来看,这两个数据集有一定相关性,但相关性不强。

图二是一个连续型变量和一个分类变量关系比较。按照例子看基本是不相关的。

图三是直方图 + 核密度曲线。用来看单个变量的分布情况。

sns.regplotsns.distplot 可以同时用,同时查看特征分布以及特征和变量关系。

以上就是小编今天为大家带来的内容,小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴 " 点击 " 即可领取

分类:
阅读
标签: