假设我有一个数据框,如pandas中的以下data.frame
a 1 11
a 3 12
a 20 13
b 2 14
b 4 15
我想生成像这样的结果data.frame
V1 1 2 3 4 20
a 11 NaN 12 NaN 13
b NaN 14 NaN 15 NaN
我怎样才能实现这种转变?
谢谢。
答案 0 :(得分:1)
您可以使用pivot
:
import pandas as pd
df = pd.DataFrame({'col1': ['a','a','a','b','b'],
'col2': [1,3,20,2,4],
'col3': [11,12,13,14,15]})
print df.pivot(index='col1', columns='col2')
输出:
col3
col2 1 2 3 4 20
col1
a 11 NaN 12 NaN 13
b NaN 14 NaN 15 NaN