数据分析师的学习之路-pandas篇(5)

接上一篇。
这次画的图可以说才算比较专业的数据分析了,就是直方图和密度图了。

3.7.4 散点图和直方图

当表里的数据特别大,比如上万条,这时要在excel里画个图,那就会又慢又卡,甚至有些操作没法用,而这种情况在pandas里完全没有问题。
比如这样的一个数据表(图片只截取了一部分):
在这里插入图片描述
意思是每个id的地区,房子的情况,比如房价、卧室数量、各房间面积等等。
(例子就是个意思,主要理解对应的逻辑)

看着这么多数据一下不知道弄啥,那就得进行数据分析了,数据分析就是把看似杂乱无章的数据,找到一些组合来发现其中的逻辑,然后做成图。比如上面例子里,猜想一下可能房价和房子起居室的面积是个什么逻辑关系,可以先做个散点图:

#依旧先导入库
import pandas as pd
import matplotlib.pyplot as plt
#然后把数据文件读进来
homes = pd.read_excel("C:/tmp/1.xlsx")
#生成散点图
homes.plot.scatter(x='price', y='sqft_living')
plt.show()

画出来类似这样:
在这里插入图片描述


如果想知道不同价位的房子数量分布,那就画直方图。

price和sqft_living都是列名,可以homes[‘price’]这么调用,也可以直接 homes.price这么调用

homes.price.plot.hist()

默认出来的图可能不好看,所以加bins参数控制方块数量,会更细腻

homes.price.plot.hist(bins=100)
#还能优化, 控制X轴步长,还有标签旋转显示
plt.xticks(range(0,max(homes.price), 500), fontsize=8, rotation=90)
#最后显示
plt.show()

出来效果类似这样:
在这里插入图片描述
这样就能很清晰的看到哪些房价的房子多了。

3.7.5 密度图

还是用上面的数据表举例,看看起居室面积在整体中的分布比例,如图所示:
在这里插入图片描述
用pandas来画也简单:

#kde全称:kernel density estimation
homes.sqft_living.plot.kde()
plt.xtick(range(0, max(home.sqft_living), 500), fontsize=8, rotation=90)

Y轴此时就是概率,图就显示了X轴每个数值的概率是多少。

3.7.6 计算相关性

如果一开始也不知道哪些列有关系,怎么分析呢,不用慌,可以直接把每两列的相关性都算出来,再看其中的关系。
pandas里一下就算出来了,还是用上面的例子,计算列两两之间的相关系数:

print(homes.corr())

打印这个函数调用结果,就是一个表:
在这里插入图片描述
值越靠近1,表示这两列越相关(列自己和自己肯定是最相关的,值为1)


画图的主要部分就学完了,其他各种图表的画法可以举一反三,查接口就行。
后面接着学习pandas对表格的各种常用的操作

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值