熊猫展平文件

普德沙

我有以下数据:

A, B, c1 , c2, c3
01001,First cat,0,0,0
01001,Second Cat,0,0,0
01002,First cat,183,0,0
01002,Second cat,183,0,6

我想成为:

A, B, col, First cat, Second Cat
01001,c1, 0,0,0
01001,c2, 0,0,0
01001,c3, 0,0,0
01002,c1, 183,183,0
01002,c2, 0,0,0
01002,c3, 0,0,6

因此,我猜它被称为展开文件?我的想法是读取每一行并手动重新解析整个文件。我想知道在熊猫或类似地区是否有一条捷径。

感谢您的帮助

耶斯列尔

DataFrame.meltDataFrame.pivot和一起使用DataFrame.fillna

df = df.melt(['A','B']).pivot(['A','variable'], 'B','value').fillna(0).reset_index()
print (df)
B      A variable First cat Second Cat Second cat
0  01001       c1         0          0          0
1  01001       c2         0          0          0
2  01001       c3         0          0          0
3  01002       c1       183          0        183
4  01002       c2         0          0          0
5  01002       c3         0          0          6

DataFrame.set_indexDataFrame.stackSeries.unstack

df = df.set_index(['A','B']).stack().unstack(level=1, fill_value=0).reset_index()
print (df)
B      A level_1 First cat Second Cat Second cat
0  01001      c1         0          0          0
1  01001      c2         0          0          0
2  01001      c3         0          0          0
3  01002      c1       183          0        183
4  01002      c2         0          0          0
5  01002      c3         0          0          6

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章