DataFrame.isin - 检测数据帧值的包含性
DataFrame的isin()方法可以检测数据帧的每个成员是否都包含在 指定的值范围内。
方法原型
DataFrame.isin(self, values)
参数:
- values:iterable、Series、DataFrame或dict。要检测的值
返回值:
与原DataFrame大小一致的数据帧对象,每个成员为True或False, 表示对应位置的原DataFrame成员是否包含在values中。
示例代码
下面的代码创建一个2x2的数据帧:
>>> df = pd.DataFrame({'num_legs': [2, 4], 'num_wings': [2, 0]},
... index=['falcon', 'dog'])
>>> df
num_legs num_wings
falcon 2 2
dog 4 0
下面的代码使用isin()方法检测该数据帧的值是否在指定的列表中:
>>> df.isin([0, 2])
num_legs num_wings
falcon True True
dog False True
下面的代码调用isin()时使用一个字典实现按列检测:
>>> df.isin({'num_wings': [0, 3]})
num_legs num_wings
falcon False False
dog False True
当使用序列或数据帧作为values参数时,索引和列需要匹配:
>>> other = pd.DataFrame({'num_legs': [8, 2], 'num_wings': [0, 2]},
... index=['spider', 'falcon'])
>>> df.isin(other)
num_legs num_wings
falcon True True
dog False False