Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 删除值为0或999999的列_Python_Python 3.x_Pandas_Data Analysis - Fatal编程技术网

Python 删除值为0或999999的列

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

我正在处理一个包含400列的大型数据集,其中一些列的所有值均为零,而另一些列的所有值均为零,只有少量的“9999999”。我想摆脱这样的专栏。我可以对只包含零的列执行此操作,但不确定hoe是否可以对包含零和“99999999”的列执行此操作

以下是删除零的代码-

 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)]

您的数据包含在什么?语法错误:无效语法