Remove rows not .isin('X')
本问题已经有最佳答案,请猛点这里访问。
很抱歉,刚进入熊猫市场,这似乎是一个非常直截了当的问题。如何使用
您可以使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | In [63]: s = pd.Series(np.arange(10.0)) In [64]: x = range(4, 8) In [65]: mask = np.logical_not(s.isin(x)) In [66]: s[mask] Out[66]: 0 0 1 1 2 2 3 3 8 8 9 9 |
如韦斯·麦金尼评论中所述,您也可以使用
1 | s[~s.isin(x)] |
你有很多选择。整理上面的一些答案和本帖中接受的答案,您可以做到:1。
注:对于选项4,您需要使用
您所要做的就是创建数据帧的子集,其中isin方法的计算结果为false:
1 | df = df[df['Column Name'].isin(['Value']) == False] |
您可以使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | In [1]: df = pd.DataFrame([[1,2],[3,4]], index=['A','B']) In [2]: df Out[2]: 0 1 A 1 2 B 3 4 In [3]: L = ['A'] In [4]: df.select(lambda x: x in L) Out[4]: 0 1 A 1 2 |