(熊猫):ISIN()和包含()有什么区别

时间:2018-10-31 08:49:46

标签: python pandas dataframe

我想知道数据框的某些列中是否存在特定字符串(每列不同的字符串)。 据我了解,isin是为数据帧编写的,但也可以用于Series,而str.contains可以更好地用于Series。 其实我不明白该如何选择两者。

非常感谢您的回答,我已经搜索了类似的问题,但是没有找到关于在这两者之间进行选择的任何解释。

1 个答案:

答案 0 :(得分:6)

https://github.com/programingjd/ansi_colors https://github.com/tomas-langer/chalk 检查列中的每个值是否包含在任意值列表中。大致相当于.isin

value in [value1, value2]检查列中的每个值中是否包含任意值。大致相当于.contains

换句话说,substring in large_string按列工作,并且可用于所有数据类型。 .isin在元素方面起作用,并且仅在处理字符串(或可以表示为字符串的值)时才有意义。

摘自官方文档:

  

Series.isin(values)

     

检查系列中是否包含值。   返回一个布尔系列,显示系列中的每个元素是否   完全匹配传递的值序列中的元素。


  

Series.str.contains(pat, case=True, flags=0, na=nan,** **regex=True)

     

测试模式或正则表达式是否包含在   系列或索引的字符串。

     

根据给定的模式还是返回布尔系列或索引   正则表达式包含在“系列”或“索引”的字符串中。

示例:

.contains