我有一个数据框,在一列中包含一个分类变量,在另一列中包含一个连续变量,如下所示:
gender contVar
Male 22379
Female 24523
Female 23421
Male 23831
Male 29234
我想得到一张这样的表:
Male Female
22379 24523
23831 23421
23831
29234
大熊猫有可能吗?当我这样做时:
df.pivot(index = df.index.tolist(), columns='gender', values='contVar')
我得到索引超出范围(显然因为有索引但是我也假设它是因为每列中的行数不相等)。任何想法都表示赞赏。
答案 0 :(得分:2)
你可以这样做:
pd.concat([pd.DataFrame({g:d.contVar.tolist()}) for g,d in df.groupby('gender')], axis=1)
Out[416]:
Female Male
0 24523 22379
1 23421 23831
2 NaN 29234