使用 isin 函数过滤 Pandas 中的行时出现 TypeError 错误

ahb*_*bon 1 python pandas

我在使用 isin 函数过滤 Pandas 中数据集的行时遇到 TypeError 错误

df[~df['id'].isin('134399', '187013')]
Run Code Online (Sandbox Code Playgroud)

结果:

df[~df['id'].isin('134399', '187013')]
Traceback (most recent call last):

  File "<ipython-input-91-ba70cce02a1c>", line 1, in <module>
    df[~df['id'].isin('134399', '187013')]

TypeError: isin() takes 2 positional arguments but 3 were given
Run Code Online (Sandbox Code Playgroud)

有人知道如何处理这个问题并可以帮助我吗?谢谢。

kin*_*all 5

您需要将一个参数传递给isin(在 2 或 3 中计算的额外参数是self)。你已经过了两个了 也就是说,您的参数应该是一个包含您要测试的值的列表。

df[~df['id'].isin(['134399', '187013'])]
Run Code Online (Sandbox Code Playgroud)