簡體   English   中英

針對 Pandas Dataframe 中的組計算非零和零值

[英]Count non-zero & zero values against groups in Pandas Dataframe

我有一個如下數據集:

docs          language   instance
example 1     python     25
example 2     JS         15
example 3     python     0
example 4     JS         34
example 5     python     0
example 6     JS         0

我正在嘗試按語言對它們進行分組,然后使用以下代碼從“實例”列中計算非零值:

df['language'].groupby(df['instance']).count()

但不幸的是,它計算了所有這些。 我希望為非零值的總數創建一個單獨的 df 和一個單獨的 df 。

零單元格對組的預期 output:

language     zero count     
python        2
JS            1

針對組的非零單元的預期 output:

language     non-zero count     
python        1
JS            2

pandas 中是否有任何方法可以對零值或非零值進行計數? 任何其他庫或方法也將不勝感激。 謝謝!

嘗試這個:

要計算零:

df.groupby('language').agg(lambda x: x.eq(0).sum())

計算非零:

df.groupby('language').agg(lambda x: x.ne(0).sum())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM