首页 > 解决方案 > Pandas:如何从数据框中现有列中的值创建新列?

问题描述

我有一个像这样的熊猫数据框:

name   category  count 
Tom      A         5
Tom      B         3
Tom      C         2
Eva      A        15
Eva      B        13
Eva      C        12

我想把它改成这样:

Name    Category_A     Category_B      Category_C
Tom         5             3                2
Eva        15            13               12

我怎样才能做到这一点?

标签: pythonpandasdataframe

解决方案


尝试这个:

df = df.pivot(columns=['category'], index='name')
df.columns = df.columns.get_level_values(1)
df.columns = ['category_'+i for i in df.columns]
df.reset_index(inplace=True)
print(df)

  name  category_A  category_B  category_C
0  Eva          15          13          12
1  Tom           5           3           2

推荐阅读