pandas - 具有多级列的熊猫数据框中的数据透视表
问题描述
我有一个熊猫数据框df
,如下所示:
node date_ A1 A2 Month
bkt B1 B2
0 1/1/2015 0.98 1
1 1/2/2015 0.71 0.96 1
2 1/3/2015 0.98 1
3 2/4/2015 0.34 2
4 2/2/1900 0.96 1.57 2
5 2/6/2015 0.01 0.03 2
6 3/7/2015 0.30 0.25 3
我正在尝试按月份对每一列进行分组以获得以下平均值:
Month A1 A2
B1 B2
1 0.89 0.96
2 0.44 0.80
3 0.30 0.25
在哪里
0.89 = avreage(0.98, 0.71, 0.98)
0.80 = average(1.57, 0.03)
每个月我想按 (A1, B1) 和 (A2, B2) 分组以获得平均值。我不确定如何进行这种多级分组。
编辑:
df.columns
MultiIndex([( 'date_', ''),
( 'A1', 'B1'),
( 'A2', 'B2'),
( 'Month', '')],
names=['node', 'bkt'])
解决方案
国际大学联盟:
df['date_'] = pd.to_datetime(df['date_'])
df.drop(('Month',''), axis=1).groupby(df['date_'].dt.month).mean()
输出:
node A1 A2
bkt B1 B2
date_
1 0.890000 0.986667
2 0.436667 1.200000
3 0.300000 0.250000
推荐阅读
- javascript - 无法在 javascript 中解析 json 对象内的值
- reactjs - 反应原生和博览会逻辑
- android - 如何使用 kotlin 序列化我的类对象?
- iterm2 - iTerm2:将会话导出到文本/pdf 文件
- python - 如何在 Tkinter GUI 中显示从硬盘浏览视频?
- c# - 如何使用存储过程获取插入的表 ID 列
- javascript - 使用没有 CSS 的 javascript 缩放浏览器 IE
- file - 加密文件与其内容之间的区别
- gnu-make - 是否可以在 GNU make 模式中使用目录名称?
- javascript - Clevertap 网络推送不适用于 Firefox 和 Chrome 71