直方图

本文探讨了直方图在数据分析中的应用,详细介绍了直方图如何展示数据的分布,包括如何通过normed参数将频数转换为概率,以及核密度估计(KDE)如何提高精度。此外,还提供了使用random生成随机数百分比直方图的方法,并强调了bins参数对直方图精细化的影响。最后,提到了针对男性和女性消费账单分布状况的绘制案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直方图

data = Series(data=np.random.randn(1000))
data.plot(kind='hist')

在这里插入图片描述
直方图:统计的是每个数据区间,数据出现的次数
normed:把次数转换成可能出现的概率
核密度估计,把每个数据区间可能出现的概率进行统计

data.plot(kind='hist', bins=5, normed=True)
data.plot(kind='kde')

在这里插入图片描述
rondom 生成随机数百分比直方图,调用hist方法

  • 柱高表示数据的频数,柱宽表示各组数据的组距
  • 参数bins可以设置直方图方柱的个数上限,越大柱宽越小,数据分组越细致
  • 设置normed参数为Ture,可以把频数转换为概率
    kde图:
  • 核密度估计,用于弥补直方图由参数bins设置的不合理导致的精度缺失问题
    练习
    绘制一个由两个不同的标准正态分布组成的的双峰分布
s1 = Series(data=np.random.normal(loc=80,scale=10,size=(100)))
s2 = Series(data=np.random.normal(loc=150,scale=20,size=(100)))

s = pd.concat((s1, s2))
s.shape
s.plot(kind='hist', bins=20, normed=True)
s.plot(kind='kde')

在这里插入图片描述

分别绘制男性、女性的消费账单的分布状况

# 图例加载
# 在plot绘图函数中, 添加label参数, 后面接受一个字符串, 表示该图像在图例中标注的名称
# 在绘图的最后,通过plt.legend()  开启图例
tips.qurey('sex == "Female"').total_bill.plot(kind='hist',bins=5,normed=True,lable="Female")
tips.query('sex == "Female"').total_bill.plot(kind='kde', label="Female_kde")


tips.query('sex == "Male"').total_bill.plot(kind='hist', bins=5, normed=True, label="Male")
tips.query('sex == "Male"').total_bill.plot(kind='kde', label="Male_kde")

# 手动开启图例
plt.legend()

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值