R でトリミング平均を計算する方法 (例あり)
トリミング平均は、データ セット内の最小値と最大値の特定の割合を削除した後に計算されたデータ セットの平均です。
たとえば、10% トリミング平均は、値の最小 10% と値の最大 10% を削除した後のデータセットの平均を表します。
R でトリミング平均を計算する最も簡単な方法は、次の基本構文を使用することです。
#calculate 10% trimmed mean mean(x, trim= 0.1 )
次の例は、実際にこの関数を使用してトリミング平均を計算する方法を示しています。
例 1: ベクトルのトリミング平均を計算する
次のコードは、データ ベクトルの 10% トリミング平均を計算する方法を示しています。
#define data data = c(22, 25, 29, 11, 14, 18, 13, 13, 17, 11, 8, 8, 7, 12, 15, 6, 8, 7, 9, 12) #calculate 10% trimmed mean mean(data, trim= 0.1 ) [1] 12,375
10% のトリミング平均は12.375です。
これは、値の最小 10% と最大 10% がデータセットから削除された後のデータセットの平均です。
例 2: データ フレーム内の列のトリミング平均を計算する
次のコードは、データ フレーム内の特定の列の 5% トリミング平均を計算する方法を示しています。
#create data frame df = data. frame (points=c(25, 12, 15, 14, 19, 23, 25, 29), assists=c(5, 7, 7, 9, 12, 9, 9, 4), rebounds=c(11, 8, 10, 6, 6, 5, 9, 12)) #calculate 5% trimmed mean of points mean(df$points, trim= 0.05 ) [1] 20.25
「ポイント」列の値の 5% トリミング平均は20.25です。
これは、5% の最小値と 5% の最大値を削除した後の「ポイント」列の平均です。
例 3: 複数の列のトリミング平均を計算する
次のコードは、データ フレーム内の複数の列の 5% トリミング平均を計算する方法を示しています。
#create data frame df = data. frame (points=c(25, 12, 15, 14, 19, 23, 25, 29), assists=c(5, 7, 7, 9, 12, 9, 9, 4), rebounds=c(11, 8, 10, 6, 6, 5, 9, 12)) #calculate 5% trimmed mean of points and assists sapply(df[c(' points ', ' assists ')], function (x) mean(x, trim= 0.05 )) assist points 20.25 7.75
結果から次のことがわかります。
- 「ポイント」列の 5% トリミング平均は20.25です。
- 「アシスト」列の 5% トリミング平均は7.75です。
関連: R の apply()、lapply()、sapply()、tapply() のガイド
追加リソース
次のチュートリアルでは、トリミング平均に関する追加情報を提供します。