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.regplot
和 sns.distplot
可以同时用,同时查看特征分布以及特征和变量关系。
以上就是小编今天为大家带来的内容,小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴 " 点击 " 即可领取