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