根据列值和列表创建列

时间:2019-05-24 09:50:13

标签: python pandas

我有一个df,我想在其中创建一个新列,并使用基于列表和另一列之间的匹配值的值。

这是模拟df:

df = pd.DataFrame(
{'fruit': ['Apple', 'Banana', 'Clementine', 'Dragon fruit', 'Elderberry', 'Figs', 'Grapes'],
'bites': [1, 2, 3, 1, 2, 3, 4]})

使用此列表:

good = ['Apple', 'Clementine', 'Figs', 'Grapes']

我尝试使用以下方法创建所需的列:

df['good']= np.where(df['fruit']== good, 'good', 'not good')

这是我想要实现的。请注意,我更喜欢此文本而不是布尔值。 enter image description here

1 个答案:

答案 0 :(得分:3)

使用Series.isin作为支票会员:

ModelSnapshot