我有一个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/

10-10 10:21