R で条件付き平均を計算する方法 (例あり)
次の構文を使用して、R で条件付き平均を計算できます。
mean(df[df$team == ' A ', ' points '])
これにより、「チーム」列が「A」に等しいデータ フレーム内の各行の「ポイント」列の平均が計算されます。
次の例は、次のデータ フレームでこの構文を実際に使用する方法を示しています。
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'), points=c(99, 90, 93, 86, 88, 82), assists=c(33, 28, 31, 39, 34, 30)) #view data frame df team points assists 1 A 99 33 2 A 90 28 3 A 93 31 4 B 86 39 5 B 88 34 6 B 82 30
例 1: カテゴリ変数の条件付き平均を計算する
次のコードは、データ フレーム内の「チーム」列の値が「A」である行のみの「ポイント」列の平均を計算する方法を示しています。
#calculate mean of 'points' column for rows where team equals 'A'
mean(df[df$team == ' A ', ' points '])
[1] 94
「チーム」が「A」に等しい行の「ポイント」列の平均値は94です。
「チーム」が「A」に等しい行のみのポイント値を平均することで、これを手動で確認できます。
- 平均点: (99 + 90 + 93) / 3 = 94
例 2: 数値変数の条件付き平均を計算する
次のコードは、データ フレーム内の「points」列の値が 90 以上である行のみの「assists」列の平均を計算する方法を示しています。
#calculate mean of 'assists' column for rows where 'points' >= 90
mean(df[df$points >= 90 , ' assists '])
[1] 30.66667
「ポイント」が 90 以上である行の「アシスト」列の平均値は30.66667です。
ポイントが 90 以上であるラインのみのアシスト値を平均することで、これを手動で確認できます。
- 平均アシスト数: (33 + 28 + 31) / 3 = 30.66667
追加リソース
次のチュートリアルでは、R で他の平均値を計算する方法を説明します。