如何从由 Pandas (Python) 中排序的时间序列索引的数据帧中的列中的所有值生成统计特征?



我从医院得到了一个孩子的出生数据,并被要求对它执行某些任务:

时间戳

种族性别body_mass
01:03:27 indian m 8.1
01:07:20 hispanic f 5.9
01:09:34 romani m 7.2
... ... ... ...
11:56:15 irish f 6.3

我需要在每 10 分钟后为"种族"中的每个值生成统计特征。

timestamp indian_avg indian_max indian_min ... iris_min
01:20:00 7.1 9.5 4.7 ... 5.1
01:40:00 7.2 8.8 5.6 ... 6.9
... ... ... ... ... ...
12:00:00 7.6 10.1 5.1 ... 6.7

请帮助我是一个初学者,现在已经在这个问题上坚持了一天

你可以使用 pd。石斑鱼! 并按频率和种族分组。

df.groupby([pd.Grouper(freq='10min'), 'ethnicity']) 
.agg({'body_mass': ['max', 'min']})

为了获得您想要的输出格式,可以执行以下操作以获得所需的结果(阅读更多内容:熊猫 - 如何在列中展平分层索引

df.groupby([pd.Grouper(freq='10min'), 'ethnicity']) 
.agg({'body_mass': ['max', 'min']}) 
.unstack()
df.columns = [' '.join(col).strip() for col in df.columns.values]

最新更新