拿到一个数据我们首先想到的是绘制散点图查看数据的基本分布情况,那么在Python.pandas中,如何绘制散点图呢?散点图的缺陷是什么,为什么要绘制抖动图呢?
先引入相应的模块
读取数据到数据框df
打印出前5行数据,可以看到有两列数据,分别是 孩子的身高和父母的身高
先绘制一个散点图,x轴为孩子的身高,y轴为父母的身高,将绘制得到的图片保存在D盘下的plot.png文件
我们可以看到得到的图片是酱紫的,由于数据点重合在了一起,所以我们看到的散点图很规整,但却隐藏了规律,于是我们想到用到抖动的方法,绘制抖动图
我们看可以实现抖动的函数:所谓的抖动就是让数据点发生微小的位移,也就是略微改变数据的值,使得数据点不能完全重合,抖动距离的大小用下面函数中的factor参数来决定。
利用上面的函数对df进行处理
我们看得到的数据df2是酱紫的:
现在接着绘制一个散点图,生成的就是抖动图了。alpha参数指的是数据点的透明度
从这个图中我们可以清楚的看到,颜色比较深、数据比较多的点和颜色比较浅、数据比较少的点的位置。
下面讲讲如何为散点图添加趋势图呗~
使用ols进行回归拟合,实际上是建立了parent为自变量的线性回归方程
先绘制一个简单的散点图
接着绘制拟合直线
查看绘制出来的图
上面第六步用到了lm.fittedvalues,他其实是一个Series(根据回归方程得到的预测值),我们来查看一下它的数据和类型。
最后绘制得到的散点图(带趋势线)是酱紫的。