pandas 作图 统计_pandas 之 groupby

这篇博客介绍了pandas的groupby功能,通过实例展示了如何按种族进行数据分组,进行计数、求均值、方差等统计操作,并通过可视化展示不同种族中逃逸方式的分布和年龄分布。还介绍了如何对多个列进行不同操作,如求年龄的中位数和精神异常占比,以及同时计算多个统计指标。最后,文章讨论了如何结合不同场景进行更复杂的分组操作。
摘要由CSDN通过智能技术生成

groupby 的 MutilIndex

df.reset_index()

df.index.get_level_values('abc') / df.index.get_level_values(0)

准备

这个博客是用 Jupyter Notebook 写的, 如果你没有用过也不影响阅读哦. 这里只要电脑装了python和pandas就好, 我们会先读入一个数据集.

# 读入一个数据集, 我使用了美国警方击毙数据集.%matplotlib inline%config InlineBackend.figure_format = 'retina'import matplotlib.pyplot as pltimport pandas as pdimport numpy as npplt.style.use('ggplot')path = 'https://raw.githubusercontent.com/HoijanLai/dataset/master/PoliceKillingsUS.csv'data = pd.read_csv(path, encoding ='latin1')data.sample(3)

name date race age signs_of_mental_illness flee 683 Tyrone Holman 09/09/15 B 37.0 True Not fleeing 1941 Michael Alan Altice 25/12/16 W 61.0 True Not fleeing 652 Manuel Soriano 27/08/15 H 29.0 False Not fleeing


什么是group by

groupby就是按xx分组, 它也确实是用来实现这样功能的. 比如, 将一个数据集按A进行分组, 效果是这样

aa91916fd054dc8a9013b416c3564383.png

我们尝试使用groupby来尝试实现这样的功能, 不过我们不用A列, 我们将用我们数据集里面的"种族"尝试分组:

data.groupby('race')

这里我们得到了一个叫DataFrameGroupBy的东西, 虽然 pandas 不让我们直接看它长啥样, 但是你将它想象成上面那幅分组后的图(我手绘的)是完全没有问题的.

这篇稿主要介绍如何鼓捣这个DataFrameGroupBy, 这个DataFrameGroupBy主要的功能能是允许你在不额外写循环的情况下, 快速对每一组数据进行操作


基本操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值