首页 > 解决方案 > 熊猫将标题和货币列表移动到单独的列

问题描述

我有一个 CSV 中的产品列表,如下所示:

Journal of Fishing,USD,1000
Journal of Fishing,GBP,1300
Journal of Fishing,EURO,1800

我想使用 Pandas 将其转换为:

Title,USD,GBP,EURO
Journal of Fishing,1000,1300,1800

关于我应该如何去做的任何想法?我查看了这个答案(将字典列表转换为单独的熊猫列),似乎我应该使用 pd.to_frame?

标签: pandas

解决方案


如果your_file.csv包含:

Journal of Fishing,USD,1000
Journal of Fishing,GBP,1300
Journal of Fishing,EURO,1800

然后:

df = pd.read_csv("your_file.csv", header=None)

df = df.rename(columns={0: "Title", 1: "Currency", 2: "Amount"})
df = df.pivot(index="Title", columns="Currency", values="Amount").reset_index()
df.to_csv("out.csv", index=None)

使用内容创建out.csv

Title,EURO,GBP,USD
Journal of Fishing,1800,1300,1000

推荐阅读