2017-05-29 11 views
0

70%以上のゼロまたはX%0を持つ列を削除するコマンドがあるかどうかを知りたいと思います。 like:ゼロを70%以上含む列を削除する

 df = df.loc[:, df.isnull().mean() < .7] 

for NaN。

ありがとうございました!

答えて

3

だけ(df==0).mean()df.isnull().mean()を変更します。

df = df.loc[:, (df==0).mean() < .7] 

はここでデモです:

df 
Out: 
    0 1 2 3 4 
0 1 1 1 1 0 
1 1 0 0 0 1 
2 0 1 1 0 0 
3 1 0 0 1 0 
4 1 1 1 1 1 
5 1 0 0 0 0 
6 0 1 0 0 0 
7 0 1 1 0 0 
8 1 0 0 1 0 
9 0 0 0 1 0 

(df==0).mean() 
Out: 
0 0.4 
1 0.5 
2 0.6 
3 0.5 
4 0.8 
dtype: float64 

df.loc[:, (df==0).mean() < .7] 
Out: 
    0 1 2 3 
0 1 1 1 1 
1 1 0 0 0 
2 0 1 1 0 
3 1 0 0 1 
4 1 1 1 1 
5 1 0 0 0 
6 0 1 0 0 
7 0 1 1 0 
8 1 0 0 1 
9 0 0 0 1 
+0

それは感謝を働きました! – hdatas

関連する問題