我有一個DF,看起來像一列計數非零數字的個數:在大熊貓/ A DF蟒蛇
a b c d e 0 1 2 3 5 1 4 0 5 2 5 8 9 6 0 4 5 0 0 0
我想輸出數列數c不是零。任何幫助將非常感激!
我有一個DF,看起來像一列計數非零數字的個數:在大熊貓/ A DF蟒蛇
a b c d e 0 1 2 3 5 1 4 0 5 2 5 8 9 6 0 4 5 0 0 0
我想輸出數列數c不是零。任何幫助將非常感激!
使用雙sum
:
print df
a b c d e
0 0 1 2 3 5
1 1 4 0 5 2
2 5 8 9 6 0
3 4 5 0 0 0
print (df != 0).sum(1)
0 4
1 4
2 4
3 2
dtype: int64
print (df != 0).sum(1).sum()
14
如果您需要數僅列c
或d
:
print (df['c'] != 0).sum()
2
print (df['d'] != 0).sum()
3
編輯:解numpy.sum
:
print ((df != 0).values.sum())
14
這是有道理的,但我怎麼做只爲列c?我不想要總數。 – user5826447
很高興能幫到你!祝你好運!你可以[接受](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)和[投票](http://stackoverflow.com/tour)回答。謝謝。 – jezrael
我看到了,謝謝。不幸的是,他們的問題是不同的,因爲他們希望每行都有它,並且除以總和,所以沒有那裏使用的代碼適用於我的問題。 – user5826447
頂部答案的第一行顯示「要計算非零值,只需執行'(column!= 0).sum()',其中'column'是要執行此操作的數據。這似乎正是你所要求的;-) –