首页 > 解决方案 > 将具有多行的 Pandas 数据框转换为一行

问题描述

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

具有以下数据框。

X     Y    V
A     0    0.1
A     1    0.2
B     0    0.3
B     1    0.4

我想将数据框转换为以下格式。V_0意思是“价值在哪里Y=0”。如何实现这种转变?

X     V_0    V_1
A     0.1    0.2
B     0.3    0.4

标签: pythonpandasnumpydataframe

解决方案


使用pd.DataFrame.pivot

res = df.pivot(index='X', columns='Y').add_prefix('V_')
res.columns = res.columns.droplevel(0)
res = res.reset_index()

print(res)

Y  X  V_0  V_1
0  A  0.1  0.2
1  B  0.3  0.4

推荐阅读