R でのattach()の使用方法 (例付き)
R でattach()関数を使用すると、データ フレーム名を入力しなくてもデータ フレーム オブジェクトにアクセスできるようになります。
この関数は次の基本構文を使用します。
attach(data)
次の例は、次のデータ フレームを使用したさまざまなシナリオでこの関数を使用する方法を示しています。
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'), points=c(99, 90, 86, 88, 95), assists=c(33, 28, 31, 39, 34), rebounds=c(30, 28, 24, 24, 28)) #view data frame df team points assists rebounds 1 A 99 33 30 2 B 90 28 28 3 C 86 31 24 4 D 88 39 24 5 E 95 34 28
例 1:attach() を使用して計算を実行する
通常、平均、中央値、範囲などを計算したい場合は、データ フレーム内の列の場合は、次の構文を使用します。
#calculate mean of rebounds column
mean(df$rebounds)
[1] 26.8
#calculate median of rebounds column
median(df$rebounds)
[1] 28
#calculate range of rebounds column
range(df$rebounds)
[1] 24 30
ただし、 attach()を使用する場合は、次の計算を実行するためにデータ フレーム名を入力する必要さえありません。
attach(df)
#calculate mean of rebounds column
mean(rebounds)
[1] 26.8
#calculate median of rebounds column
median(rebounds)
[1] 28
#calculate range of rebounds column
range(rebounds)
[1] 24 30
Attach()を使用すると、列名を直接参照でき、R は使用しようとしているデータ フレームを認識します。
例 2:attach() を使用して回帰モデルを当てはめる
通常、R で線形回帰モデルを近似したい場合は、次の構文を使用します。
#fit regression model
fit <- lm(points ~ assists + rebounds, data=df)
#view coefficients of regression model
summary(fit)$coef
Estimate Std. Error t value Pr(>|t|)
(Intercept) 18.7071984 13.2030474 1.416885 0.29222633
assists 0.5194553 0.2162095 2.402555 0.13821408
rebounds 2.0802529 0.3273034 6.355733 0.02387244
ただし、 attach()を使用する場合は、回帰モデルに適合させるためにlm()関数でdata引数を使用する必要さえありません。
#fit regression model
fit <- lm(points ~ assists + rebounds)
#view coefficients of regression model
summary(fit)$coef
Estimate Std. Error t value Pr(>|t|)
(Intercept) 18.7071984 13.2030474 1.416885 0.29222633
assists 0.5194553 0.2162095 2.402555 0.13821408
rebounds 2.0802529 0.3273034 6.355733 0.02387244
回帰結果はまったく同じであることに注意してください。
ボーナス: detach() と search() を使用する
search()関数を使用すると、現在の R 環境にアタッチされているすべてのオブジェクトを表示できます。
#show all attached objects
search()
[1] ".GlobalEnv" "df" "package:stats"
[4] "package:graphics" "package:grDevices" "package:utils"
[7] "package:datasets" "package:methods" "Autoloads"
[10] "package:base"
また、 detach()関数を使用して、現在デタッチされているオブジェクトをデタッチすることができます。
#detach data frame
detach(df)
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。