我有一个看起来像这样的 df:
Id field value
0 1 first_name a
1 1 number 123
2 1 last_name aa
0 2 first_name b
1 2 number 456
2 2 last_name bb
3 2 type p
每个 Id 都有不同长度的索引和大致相同的字段类型,但有些多一些少。
如何翻转 df,使字段成为列,而值位于它们的下方?
像这样:
Id first_name number last_name type
0 1 a 123 aa
1 2 b 456 bb p
请您参考如下方法:
我想你想要set_index 和unstack:
out = df.set_index(['Id', 'field']).unstack()
out.columns = out.columns.get_level_values(1)
out.reset_index()
field Id first_name last_name number type
0 1 a aa 123 NaN
1 2 b bb 456 p
