我了解如何使用字典替换列值,但是我想将字典中没有的所有值转换为 NaN 或其他值。我得到这个:
Dictionary is:
{'apple': 1, 'peach': 6, 'watermelon': 4, 'grapes': 5, 'orange': 2,
'banana': 3}
DataFrame is:
fruit_tag
apple
orange
banana
watermelon
red
blue
I use:
df["fruit_tag"].replace(dict, inplace=True)
print(df)
I get:
fruit_tag
1
2
3
4
red
blue
What I want to get:
fruit_tag
1
2
3
4
NaN
NaN
最佳答案
使用 map
:
d = {'apple': 1, 'peach': 6, 'watermelon': 4, 'grapes': 5, 'orange': 2,'banana': 3}
df["fruit_tag"] = df["fruit_tag"].map(d)
print (df)
fruit_tag
0 1.0
1 2.0
2 3.0
3 4.0
4 NaN
5 NaN
关于Python DataFrame : Replace values using dictionary, 如果不在字典中,则转换 NaN,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43367700/