今、私は組み込みのデータセットアイリスからコンボを持っています。これまでは、一対の値のlm()の係数を見つけることができるように導かれました。R:データセットのコンビネーションからより複雑な計算を実行する方法は?
myPairs <- combn(names(iris[1:4]), 2)
formula <- apply(myPairs, MARGIN=2, FUN=paste, collapse="~")
model <- lapply(formula, function(x) lm(formula=x, data=iris)$coefficients[2])
model
しかし、私はさらにいくつかのステップを進めて、さらに計算に使用するlm()の係数を使用したいと思います。
Coefficient <- lm(formula=x, data=iris)$coefficients[2]
Spread <- myPairs[1] - coefficient*myPairs[2]
library(tseries)
adf.test(Spread)
手順自体は十分に簡単ですが、私は、データセット内の各combnのためにこれを行う方法を見つけることができませんでした:私はこのような何かをしたいと思います。 (sidenoteとして、adf.testはそのようなデータには適用されませんが、デモのためにアイリスデータセットを使用しています)。 私は、このような手順のループを書くほうがよいでしょうか?
ek。ループを使用することなく、各組み合わせに対して結果(具体的には最後の4行)を提供するソリューションが必要です。そうですか? –
私はあなたの2番目のブロックで少し混乱しています。すべてのペアのスプレッドを計算しますか?最後に何が起こるのですか( 'myPairs [6] - 係数*' ???)? – TARehman
@AnalyticalMonkはい、そうです。ループが効率的であれば、私はそれを書いても構いません。 –