龙空技术网

python数据可视化(四)seaborn回归分析绘图(regplot)

python万 479

前言:

现在看官们对“pythonreg”大约比较注意,姐妹们都需要剖析一些“pythonreg”的相关文章。那么小编同时在网上汇集了一些有关“pythonreg””的相关知识,希望小伙伴们能喜欢,看官们快快来学习一下吧!

在讲回归分析绘图函数之前,我们先探讨一下什么是回归分析,所谓的回归分析是指确定两种或两种以上变量之间关系的一种统计分析方法。这里我们举个例子,就拿NBA球员数据来说,我们分析球员臂展和盖帽数这两个变量的时候,就是一种回归分析,比如浓眉哥2.27米的臂展,场均可以贡献3.1个盖帽,这个臂展和盖帽数之间肯定存在某种关系,至于这个关系我们暂时不关心。好,直奔主题,接下来我们就看下涉及回归分析绘图的函数。

seaborn.regplot()

seaborn.regplot()这个函数用来绘制线性回归模型图,我们先看下这个函数的所有参数,然后对重要参数进行演示,理解每个参数真正的含义。seaborn.regplot(x, y, data=None, x_estimator=None, x_bins=None, x_ci='ci', scatter=True, fit_reg=True, ci=95, n_boot=1000, units=None, order=1, logistic=False, lowess=False, robust=False, logx=False, x_partial=None, y_partial=None, truncate=False, dropna=True, x_jitter=None, y_jitter=None, label=None, color=None, marker='o', scatter_kws=None, line_kws=None, ax=None)

从函数模型上可以看到,除了x,y(string, series, or vector array)是必填参数,其他都是可选参数,那么我们先只传必填参数进去,看绘图效果。

#导入依赖包%matplotlib inlineimport numpy as npimport pandas as pdimport matplotlib as mplimport matplotlib.pyplot as pltimport seaborn as sns#加载sns内置数据集tips = sns.load_dataset("tips")sns.set(color_codes=True)tips.head(3)

数据预览

关于数据集,total_bill是消费总金额,tip是小费,size指用餐人数。

我们先看看消费总金额和小费之间的关系。如图:

total_bill与tip之间的关系

从图中可以看到,这个直线是上升趋势,也就反应了消费总金额越高,给的小费也越多,这就是regplot()这个函数的作用,他根据我们给的两个变量,拟合出一条关系直线。但是在局这条直线不但反应了总体关系,还反应了局部的一些信息,如消费总金额在10-20时,小费金额基本上靠近了拟合的直线,但是超过30后,他们之间的关系就不是那么明显了。那么我们在看看其他变量和小费之间的关系。

sns.regplot(data=tips,x="size",y="tip")

tips和size之间的关系

可以从这个图中可以看出,虽然用餐人数和小费之间也是一个线性增长的趋势,但是这些点不太集中,离直线两边的距离比上一个图较远。同时,我们也观察到,size值因为是个离散值,所以这些点基本重叠在一起,为了更好的做拟合,regplot()函数提供了参数x_jitter,这个参数可以设置size值的偏离范围,这里size代表用餐人数,那么我们设置的x_jitter应该在0-1之间,我们设置为0.3,然后看看效果。

sns.regplot(data=tips,x="size",y="tip",x_jitter=0.3)

x_jitter=0.3

可以看到,经过抖动设置,散点图显得更易观察,所以说当画图变量是离散变量时,这个参数是很有用的。由于这个函数参数较多,这里只介绍基本参数的用法,更多参数请点击站外链接(官方介绍)。

标签: #pythonreg #python回归预测画图