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


多くの場合、特定の基準を満たす R データ フレーム内の行数のみをカウントしたい場合があります。幸いなことに、これは次の基本構文を使用して簡単に実行できます。

 sum(df$column == value, na.rm= TRUE )

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

 #create data frame
data <- data.frame(team=c('Mavs', 'Mavs', 'Spurs', 'Spurs', 'Lakers'),
                   points=c(14, NA, 8, 17, 22),
                   rebounds=c(8, 5, 5, 9, 12))

#view data frame
data

    team points rebounds
1 Mavs 14 8
2 Mavs NA 5
3 Spurs 8 5
4 Spurs 17 9
5 Lakers 22 12

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

次のコードは、チーム名が「Mavs」に等しい行数をカウントする方法を示しています。

 sum(data$team == ' Mavs ')

[1] 2

次のコードは、チーム名が「Mavs」または「Lakers」に等しい行数をカウントする方法を示しています。

 sum(data$team == ' Mavs ' | data$team == ' Lakers ')

[1] 3

次のコードは、チーム名が「Lakers」に等しくない行数をカウントする方法を示しています。

 sum(data$team != ' Lakers ')

[1] 4

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

次のコードは、ポイントが 10 を超える行の数をカウントする方法を示しています。

 sum(data$points > 10, na.rm= TRUE )

[1] 3

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

 sum(data$rebounds <= 9, na.rm= TRUE )

[1] 4

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

次のコードは、ポイントが 10 ~ 20 の間にある行の数をカウントする方法を示しています。

 sum(data$points > 10 & data$points < 20, na.rm= TRUE )

[1] 2

次のコードは、バウンスが 8 ~ 10 の行数をカウントする方法を示しています。

 sum(data$rebounds > 8 & data$rebounds < 10, na.rm= TRUE )

[1] 1

追加リソース

R でグループごとの観測値をカウントする方法
R でデータをグループ化して要約する方法

コメントを追加する

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