Filter out rows of panda-df by comparing to list
本问题已经有最佳答案,请猛点这里访问。
以下问题经常发生。假设我有一个数据帧,其中一列可以取一个离散值:
1 | df = pd.DataFrame({'col1': [1, 2,3,4,5,6,7], 'col2': ["A","B","A","C","B","A","D"]}) |
在这种情况下,
1 | df["col2"] not in ["A","B"] |
但是,这给了我一个错误:
有没有一个干净的方法来过滤这些行?
您可以使用
1 | df = df[~df.col2.isin(['A', 'B'])] |
产量
1 2 3 | col1 col2 3 4 C 6 7 D |