pandas 统计一周中的每个位置的NO2平均浓度

统计一周中的每个位置的NO2平均浓度

df.groupby(
    [air_quality["datetime"].dt.weekday, "location"])["value"].mean()

此处‘datetime’是datetime数据类型。此处datetime数据中有完整年月日时分秒。

还记得统计计算教程中groupby提供的split-apply-combine模式吗?这里,我们要计算每个工作日和每个测量位置的给定统计数据(例如平均值)。为了在工作日分组,我们使用pandas Timestamp的datetime属性weekday(周一=0,周日=6),dt访问器也可以访问该属性。可以对位置和工作日进行分组,以分割这些组合中每个组合的平均值计算。

一天中每小时的平均值是多少

air_quality.groupby(air_quality["datetime"].dt.hour)["value"].mean()
但这个会有问题,必须保证air_quality['datetime']只有一天数据。看另一篇blog就知道为啥的= =
[https://blog.csdn.net/weixin_46035550/article/details/120290166?spm=1001.2014.3001.5501](https://blog.csdn.net/weixin_46035550/article/details/120290166?spm=1001.2014.3001.5501)
画图代码
fig, axs = plt.subplots(figsize=(12, 4))

air_quality.groupby(air_quality["datetime"].dt.hour)["value"].mean().plot(
    kind='bar', rot=0, ax=axs
)

Out[15]: <AxesSubplot:xlabel='datetime'>

plt.xlabel("Hour of the day");  # custom x label using matplotlib

plt.ylabel("$NO_2 (µg/m^3)$");

来源:
pandas官网
How to handle time series data with ease?

就一句代码,把好多事儿给干了。很奈斯!之前用pandas都是分开统计的。

不过还是想吐槽一下,pandas细节太多了啊啊啊啊啊。
接着找。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值