检查df中是否存在多个值

时间:2019-12-16 07:42:57

标签: python pandas

我有以下df:

find

我要检查df中是否存在以下值list_columns = ['weight', 'animal', 'age'] list_data = [ [14, '2. D', 10], [4, 'DOG2-', 2], [7, 'DOG1-', 3], [6, 'DOG1', 5] ] df_animals = pd.DataFrame(columns=list_columns, data=list_data) df_animals.head() ,如果存在,请用字符串'2. D','DOG2-','DOG1-','dddog'替换它们

我的尝试:

对于一个值,我可以执行以下操作:

'dog1'

我努力使用列表,但由于符号if 'DOG2-' in df_animals.values: df_animals['animal'] = df_animals['animal'].replace({'DOG2-':'dog1'}) 而无效。告诉他们就可以了。

- .

这只会返回相同的df并显示警告:list = ('2. D','DOG2-','DOG1-','DOG-') if list in df_animals.values: df_animals['animal'] = df_animals['animal'].replace({'2. D':'DOG2','DOG2-':'DOG2','DOG1-':'DOG1','DOGG 1':'DOG1'})

我现在正在考虑使用FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison,但是它会用到很多行,并且不知道这是否是最Python的方式。列表似乎很简单,但我想我缺少了一些东西。有人可以帮我解决我的问题吗?

0 个答案:

没有答案