我有一个如下所示的数据框。它是带有值的9,3数据帧。
col1 col2 val
a b 15
a c 19
a a 20
b a 15
b b 55
b c 16
c a 19
c b 16
c c 5
我想要一些东西3,3数据帧。
a b c
a 20 15 19
b . . .
c . . .
感谢任何帮助。
答案 0 :(得分:0)
听起来你需要pivot。除了大熊猫文档之外的更多说明,我非常喜欢这篇名为Reshaping in Pandas - Pivot, Pivot-Table, Stack and Unstack explained with Pictures
的博客文章>>> data
[['a', 'b', 15], ['a', 'c', 19], ['a', 'a', 20], ['b', 'a', 15], ['b', 'b',
55], ['b', 'c', 16], ['c', 'a', 19], ['c', 'b', 16], ['c', 'c', 5]]
>>> df = pd.DataFrame(data=data, columns=['col1', 'col2', 'val'])
>>> df
col1 col2 val
0 a b 15
1 a c 19
2 a a 20
3 b a 15
4 b b 55
5 b c 16
6 c a 19
7 c b 16
8 c c 5
>>> df.pivot(index='col1', columns='col2', values='val')
col2 a b c
col1
a 20 15 19
b 15 55 16
c 19 16 5