Python 数据帧筛选-列和行
我想对熊猫数据帧执行过滤。 示例表如下所示。例如,我想筛选(删除)所有包含值2的列Python 数据帧筛选-列和行,python,pandas,dataframe,filtering,Python,Pandas,Dataframe,Filtering,我想对熊猫数据帧执行过滤。 示例表如下所示。例如,我想筛选(删除)所有包含值2的列 C1 C2 C3 C4 C5 1 1 1 1 4 1 2 1 2 5 1 1 3 1 4 我想要这样的结果表。(C2和C4已移除) 另外,我希望使用值5对行执行此操作 C1 C3 C5 1 1 4 1 3 4 我可以很容易地对单个列或行执行此操作,如df=df[df.C2!=2],但对于多个或整列和整行,我没有什么好主意。 有什么简单的方法吗?您可以通过选择并指定轴: prin
C1 C2 C3 C4 C5
1 1 1 1 4
1 2 1 2 5
1 1 3 1 4
我想要这样的结果表。(C2和C4已移除)
另外,我希望使用值5对行执行此操作
C1 C3 C5
1 1 4
1 3 4
我可以很容易地对单个列或行执行此操作,如df=df[df.C2!=2],但对于多个或整列和整行,我没有什么好主意。
有什么简单的方法吗?您可以通过选择并指定轴:
print df
C1 C2 C3 C4 C5
0 1 1 1 1 4
1 1 2 1 2 5
2 1 1 3 1 4
print ~(df == 2)
C1 C2 C3 C4 C5
0 True True True True True
1 True False True False True
2 True True True True True
df = df.loc[:, ~(df == 2).any(axis=0)]
print df
C1 C3 C5
0 1 1 4
1 1 1 5
2 1 3 4
df = df.loc[~(df == 5).any(axis=1)]
print df
C1 C3 C5
0 1 1 4
2 1 3 4
我不知道,但它似乎对处理桌子非常有用。谢谢你的建议。
print df
C1 C2 C3 C4 C5
0 1 1 1 1 4
1 1 2 1 2 5
2 1 1 3 1 4
print ~(df == 2)
C1 C2 C3 C4 C5
0 True True True True True
1 True False True False True
2 True True True True True
df = df.loc[:, ~(df == 2).any(axis=0)]
print df
C1 C3 C5
0 1 1 4
1 1 1 5
2 1 3 4
df = df.loc[~(df == 5).any(axis=1)]
print df
C1 C3 C5
0 1 1 4
2 1 3 4