Python 删除值为0或999999的列
我正在处理一个包含400列的大型数据集,其中一些列的所有值均为零,而另一些列的所有值均为零,只有少量的“9999999”。我想摆脱这样的专栏。我可以对只包含零的列执行此操作,但不确定hoe是否可以对包含零和“99999999”的列执行此操作 以下是删除零的代码-Python 删除值为0或999999的列,python,python-3.x,pandas,data-analysis,Python,Python 3.x,Pandas,Data Analysis,我正在处理一个包含400列的大型数据集,其中一些列的所有值均为零,而另一些列的所有值均为零,只有少量的“9999999”。我想摆脱这样的专栏。我可以对只包含零的列执行此操作,但不确定hoe是否可以对包含零和“99999999”的列执行此操作 以下是删除零的代码- df = df.loc[:, (df != 0).any(axis=0)] 我知道这相当简单。但如果有人能帮我下一部分,那就太棒了。谢谢这应该可以: df = df.loc[:, ((df != 0) & (df != 99
df = df.loc[:, (df != 0).any(axis=0)]
我知道这相当简单。但如果有人能帮我下一部分,那就太棒了。谢谢这应该可以:
df = df.loc[:, ((df != 0) & (df != 999999999)).any(axis=0)]
例如:
>>> df
a b c
0 0 0 1
1 0 0 0
2 999999999 0 5
>>> df.loc[:, ((df != 0) & (df != 999999999)).any(axis=0)]
c
0 1
1 0
2 5
您可以使用.isin()
对几个值进行条件设置:
df = df.loc[:, (~df.isin([0, 99999999])).any(axis=0)]
您的数据包含在什么?语法错误:无效语法