如果此列中的值匹配,Python会在另一列中分配相同的值

时间:2016-11-10 19:19:19

标签: python

我从excel导入了一个表。以下是我的代码:

import pandas as pd

table = pd.ExcelFile('C:/Users/Sophia Wu/Master Data_PMS_1110.xlsx')
table.sheet_names
df = table.parse('Sheet1')

表格如下:

| 水果|颜色 |

| Apple |红色|

|梨|黄色|

|葡萄|紫色|

| Apple | |

|葡萄| |

如果是相同类型的水果,我需要指定相同的颜色。由于表中有超过10,000行,我如何使用Python自动分配值?

非常感谢!

1 个答案:

答案 0 :(得分:0)

试试这个,(自上班以来未经测试):

colors_to_match = {'Apple':'Red','Pear':'Yellow','Grape':'Purple'}
df['Color'] = df['Fruit'].map(colors_to_match)

基本上你正在制作一个查找表,然后将它映射到水果中的值,并使用map function from panda

将颜色设置为它