【发布时间】:2017-09-09 02:15:24
【问题描述】:
假设我有一个包含以下列的数据框:id1、id2、valueType、value。
首先,我想旋转数据框以附加不同可能值类型的列(valueType.unique() ?)。然后,对于每个值,我想将其映射到具有相应 id1、id2 的行的正确 valueType 列。我想我还必须考虑到新的旋转列的长度不一定相等(即某些 valueType 比其他 valueType 出现的频率更高),所以我必须先用 NaN 填充它们。最好的方法是什么?我猜我会在数据帧上使用 pivot() 和 set_index()?
输入df
id1 id2 valuetype value
0 1 a height 5
1 1 a width 4
2 1 a length 3
3 1 b height 6
4 1 b width 5
5 1 c length 4
6 2 a height 3
7 2 a width 6
8 2 b height 7
9 2 b length 8
10 2 c height 9
11 2 c width 5
预期输出
id1 id2 height length width
0 1 a 5.0 3.0 4.0
1 1 b 6.0 NaN 5.0
2 1 c NaN 4.0 NaN
3 2 a 3.0 NaN 6.0
4 2 b 7.0 8.0 NaN
5 2 c 9.0 NaN 5.0
【问题讨论】:
-
在问之前最好在谷歌搜索你的问题..:)
标签: python pandas join dataframe pivot