ExcelのAVERAGEIF
関数は、指定した条件に一致するセルの平均値を計算する便利な関数です。Rでも同様の処理を行うことができます。ここでは、RでExcelのAVERAGEIF
関数と同様の操作を実行する方法を紹介します。
1. 基本的な使い方
Rで条件に一致する要素の平均を計算するには、mean()
関数と条件式を組み合わせます。以下は、数値ベクトルに対して条件に一致する要素の平均を計算する例です。
# ベクトルの作成
values <- c(1, 2, 3, 4, 2, 5, 2)
# "2"に一致する要素の平均を計算
average <- mean(values[values == 2])
print(average) # 結果は2
このコードでは、values
ベクトルの中から2
に一致する要素を抽出し、それらの平均を計算しています。
2. 条件を指定した平均の計算
特定の条件に基づいて平均を計算することもできます。例えば、3以上の数値の平均を計算するには次のようにします。
# 3以上の要素の平均を計算
average <- mean(values[values >= 3])
print(average) # 結果は4
このコードでは、ベクトルvalues
の中から3以上の要素を抽出し、それらの平均を計算しています。
3. データフレームに対する平均の計算
データフレームの特定の列に対して条件付きで平均を計算することも可能です。例えば、以下のようなデータフレームがあるとします。
# データフレームの作成
df <- data.frame(
Name = c("John", "Jane", "Doe", "Alice", "Bob"),
Age = c(25, 30, 22, 35, 28)
)
# "Age"列が30以上の平均を計算
average_age <- mean(df$Age[df$Age >= 30])
print(average_age) # 結果は32.5
このコードでは、データフレームdf
のAge
列に対して30以上の値の平均を計算しています。
4. まとめ
RでExcelのAVERAGEIF
関数と同じような操作を行うには、mean()
関数と条件を組み合わせて使用します。これにより、条件に一致する要素の平均を柔軟に計算することができます。
コメント