很抱歉刚刚进入 Pandas,这似乎是一个非常直截了当的问题。如何使用 isin('X')
删除 在 列表 X
中的行?在 R 中我会写 !which(a %in% b)
.
最佳答案
你有很多选择。整理上面的一些答案和accepted answer from this post你可以这样做:
1. df[-df["column"].isin(["value"])]
2. df[~df["column"].isin(["value"])]
3. df[df["column"].isin(["value"]) == False]
4. df[np.logical_not(df["column"].isin(["value"]))]
注意:对于选项 4,您需要 import numpy as np
更新:您也可以为此使用 .query
方法。这允许 method chaining :
5. df.query("列不在@values中")
.
其中 values
是您不想包含的值的列表。
关于python - 删除行不是 .isin ('X' ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14057007/