【发布时间】:2021-02-26 22:26:46
【问题描述】:
我正在尝试旋转数据框,以便将“ID”列中的唯一值用于列标签,并创建多索引以将数据组织成分组行。多索引的第二级将是从“日期”列获得的唯一值,多索引的第一级将包含在透视操作中“未考虑”的所有其他列。
这是数据框示例:
df = pd.DataFrame(
data=[['A', '10/19/2020', 33, 0.2],
['A', '10/6/2020', 17, 0.6],
['A', '11/8/2020', 7, 0.3],
['A', '11/14/2020', 19, 0.2],
['B', '10/28/2020', 26, 0.6],
['B', '11/6/2020', 19, 0.3],
['B', '11/10/2020', 29, 0.1]],
columns=['ID', 'Date', 'Temp', 'PPM'])
原始文件
ID Date Temp PPM
0 A 10/19/2020 33 0.2
1 A 10/6/2020 17 0.6
2 A 11/8/2020 7 0.3
3 A 11/14/2020 19 0.2
4 B 10/28/2020 26 0.6
5 B 11/6/2020 19 0.3
6 B 11/10/2020 29 0.1
想要的输出
ID A B
Date
Temp 10/19/2020 33 NaN
10/28/2020 NaN 26
11/6/2020 17 19
11/8/2020 7 NaN
11/10/2020 NaN 29
11/14/2020 19 NaN
PPM 10/19/2020 0.2 NaN
10/28/2020 NaN 0.6
11/6/2020 0.6 0.3
11/8/2020 0.3 NaN
11/10/2020 NaN 0.1
11/14/2020 0.2 NaN
我查看了 this extensive answer 以在 pandas 中旋转数据框,但我无法看到它如何涵盖/应用它,我正在尝试实施的具体案例。
编辑:虽然我在示例中提供了日期作为字符串,但这些实际上是我正在处理的完整数据框中的 datetime64 对象。
【问题讨论】:
标签: pandas pivot pandas-groupby pivot-table multi-index