Python で countif 関数を実行する方法


多くの場合、特定の基準を満たす pandas DataFrame 内の行数のみをカウントしたい場合があります。

幸いなことに、これは次の基本構文を使用して簡単に実行できます。

 sum(df. column_name == some_value )

次の例は、この構文を次のデータ フレームで実際に使用する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' x ': [3, 4, 5, 6, 7, 8, 9, 10, 10, 12, 13],
                   ' y ': [3, 4, 5, 7, 9, 13, 15, 19, 23, 24, 29]})

#view head of DataFrame
df. head ()

x y
0 3 3
1 4 4
2 5 5
3 6 7
4 7 9

例 1: 特定の値に等しい行をカウントする

次のコードは、変数 x が 10 に等しい行数をカウントする方法を示しています。

 sum( df.x == 10 )

2

次のコードは、変数 x が 10 に等しい、または変数 y が 5 に等しい行数をカウントする方法を示しています。

 sum((df. x == 10 ) | (df. y == 5 ))

3

次のコードは、変数 x が 10 に等しくない行数をカウントする方法を示しています。

 sum( df.x != 10 )

9

例 2: 特定の値以上の行をカウントする

次のコードは、x が 10 より大きい行数をカウントする方法を示しています。

 sum( df.x > 10 ) 

2

次のコードは、x が 7 以下の行数をカウントする方法を示しています。

 sum(df. x <= 7 )
 
5

例 3: 2 つの値の間の行を数える

次のコードは、x が 10 ~ 20 の範囲の行数をカウントする方法を示しています。

 sum((df. x >= 5 ) & (df. x <= 10 ))

7

追加リソース

パンダ: 2 つの線の違いを見つける方法
Pandas: 特定の文字列を含む行を削除する方法
パンダ: DataFrame 内の重複行を削除する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です