RでEXCELのAVERAGEIF関数と同じことをする方法【R備忘録】

 

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

このコードでは、データフレームdfAge列に対して30以上の値の平均を計算しています。

スポンサーリンク

4. まとめ

RでExcelのAVERAGEIF関数と同じような操作を行うには、mean()関数と条件を組み合わせて使用します。これにより、条件に一致する要素の平均を柔軟に計算することができます。

 

コメント

タイトルとURLをコピーしました