我有一个带有以下列的 Pandas 数据框:
看起来像这样:
Product New York California
Widget01 100 50
我想使用两个位置列来重塑框架,以创建一个像这样的新列:
Product Location Total Sold
Widget01 New York 100
Widget01 California 50
用 Pandas 如何做到这一点?
最佳答案
您可以使用 pandas.melt()
-
pd.melt(df,id_vars='Product', var_name='Location',value_name='Total Sold')
演示-
In [72]: df
Out[72]:
Product New York California
0 Widget01 100 50
In [73]: pd.melt(df,id_vars='Product', var_name='Location',value_name='Total Sold')
Out[73]:
Product Location Total Sold
0 Widget01 New York 100
1 Widget01 California 50