Python 使用excel工作表中的数据替换dataframe中的值
我有一个带有产品名称的简单excel文件。第一行是类别(A1:水,A2:起泡,A3:蒸馏,B1:软饮料,B2:可口可乐,B3:橙汁,B4:柠檬水等),下面的每个单元格都是不同的产品。我想用产品类别替换另一个数据帧(df1)的单元格。例如,可口可乐将成为软饮料。如果产品不在excel中,它将不会被替换(例如Cookie) 打印(df1) 结果:Python 使用excel工作表中的数据替换dataframe中的值,python,excel,python-3.x,pandas,dataframe,Python,Excel,Python 3.x,Pandas,Dataframe,我有一个带有产品名称的简单excel文件。第一行是类别(A1:水,A2:起泡,A3:蒸馏,B1:软饮料,B2:可口可乐,B3:橙汁,B4:柠檬水等),下面的每个单元格都是不同的产品。我想用产品类别替换另一个数据帧(df1)的单元格。例如,可口可乐将成为软饮料。如果产品不在excel中,它将不会被替换(例如Cookie) 打印(df1) 结果: print (df1) Product Quantity 0 Soft Drinks 1234 1 C
print (df1)
Product Quantity
0 Soft Drinks 1234
1 Cookie 4
2 Water 333
3 Snacks 88
我们从Excel数据框创建一个查找字典,并使用它将产品名称替换为类别(字典中未找到的产品将按要求保留为未替换): 结果:
Product Quantity
0 Soft Drinks 1234
1 Cookie 4
2 Water 333
3 Snacks 88
PS:这是csv文件,要粘贴到A1处的Excel工作表中,以复制示例:
Water,Soft Drinks,Sandwich,Snacks
Sparkling,Coca Cola,Ham and cheese,Chips
Still,Orange Juice,Vegetarian,
,Lemonade,Club,
,,Spinach,
谢谢你的回答。目标是使用我在问题中展示的易于导航的Excel表格。您显示的CSV文件不容易修改。有没有办法将excel工作表(见上图)转换为字典?附加csv文件只是为了复制示例,因为我无法在此处附加excel文件。代码的第1行读取Excel文件-当然,您必须调整路径和文件名。替换词典的数据将从此Excel文件读入数据框
df
@Huebschi您是否设法使其运行?如果是这样,它解决了你的问题,你应该考虑。
Product Quantity
0 Soft Drinks 1234
1 Cookie 4
2 Water 333
3 Snacks 88
Water,Soft Drinks,Sandwich,Snacks
Sparkling,Coca Cola,Ham and cheese,Chips
Still,Orange Juice,Vegetarian,
,Lemonade,Club,
,,Spinach,