我有一个DataFrame“ IRAData”的摘录和一个名为'Labels'的列:
380 u'itator-Research'
381 u'itator-OnSystem'
382 u'itator-QueryClient'
383 u'itator-OnSystem'
384 u'itator-OnSystem'
385 u'itator-OnSystem'
386 u'itator-OnSystem'
387 u'itator-OnSystem'
388 u'itator-OnSystem'
Name: Labels, dtype: object
但是,当我运行以下代码时,我得到“ False”输出:
print(u'itator-QueryClient' in IRAData['Labels'])
当我删除unicode'u'时,该列中的其他值也一样。
有人知道为什么吗?
编辑:我在下面的评论中放置的解决方案。无需尝试对建议的重复问题的答案。
最佳答案
我认为避免此问题的最佳方法是正确导入数据。
您存储"u'itator-QueryClient'"
,其中u
是unicode字符串的原始标记,
当'itator-QueryClient'
是存储在此处的好信息时。
例如,从此html页面中,只需选择并复制381至384行的发票即可:
In [498]: import ast
In [499]: pd.read_clipboard(names=['value'],index_col=0,header=None,\
converters={'value': ast.literal_eval})
Out[499]:
value
381 itator-OnSystem
382 itator-QueryClient
383 itator-OnSystem
384 itator-OnSystem
然后
'itator-QueryClient' in IRAData['value']
将被评估为True
。关于python - Python:“in”无法识别DataFrame列中的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47189166/