Python pandas合并行并将行值转换为列



我需要将具有多行的Pandas数据框转换为一行。

具有以下数据帧。

key  value   id    code
A     36.0   NWL   787501
B     38.0   NWL   787501
A     19.0   MOH   978462
B     25.5   MOH   978462
A     92.0   PPC   259280
B     73.7   PPC   259280

我想把数据帧转换成以下格式。

A      B      id    code 
36.0   38.0   NWL   787501
19.0   25.5   MOH   978462
92.0   73.7   PPC   259280

使用set_index,unstackreset_index的数据帧重塑来尝试:

df.set_index(['id','code', 'key'])['value'].unstack().reset_index()

输出:

key   id    code     A     B
0    MOH  978462  19.0  25.5
1    NWL  787501  36.0  38.0
2    PPC  259280  92.0  73.7

最新更新