Rでのデータ構造の解析方法
概要
Rで様々な関数を使っていると、以下のように親切に結果が出力される場合がよくある。問題は、この結果をただ見るだけでなく、アウトプットとして受け取って活用したい時だ。
例
例えば、上のスクリーンショットで残差の最大値が必要な場合、単に15.9719をコピーしても良い。しかし、数十回、数百回と繰り返し、各分析で残差の最大値が気になるなら、この方法では終わりのないノルマが残るだけだ。このような時には、str()
関数を使ってデータの構造を確認することができる。
str()
関数はデータ型が何か、その種類はどのようなものか、大まかにいくつあるかを教えてくれる有用な関数だ。しかし、その真価はデータを参照する時にどうすればよいか、その構造を示してくれることだ。ディレクトリさえ分かれば、結果に直接出力されない情報でも、利用可能なデータの形でアクセスできる。この例では、残差の最大値が必要だったので、out$residuals
の最大値を求めればよい。
上のsummary()
で出力された結果と一致することを確認できる。
もちろん、探しているものが常にこのように簡単に見つかるとは限らないが、この操作ができるかどうかで、スキルには大きな差が出てくる。
コード
out<-lm(waiting~eruptions,data=faithful); summary(out)
str(out)
out[]
max(out$residuals)