1000行のデータごとに回帰を実行するRスクリプトを作成しようとしています。R回帰ループ
また、出力をcsvファイルに保存したいと思います。
データリンク:https://drive.google.com/open?id=0B-W2Dyw4QjoMQ0F1ZFhsdWJORHM
すべてのヘルプは素晴らしいことです!
z <- read.csv("Merge.csv", sep=",", header=TRUE, stringsAsFactors=FALSE)
co<-matrix(NA, nrow=44, ncol = 7)
## Regression for mkt returns and 7 variables
for (i in 5:44){
cat(i)
temp <- lm(ret~earningsyld+book2mkt+leverage+corptax+financials+Momentum+lnmktcap, na.action="na.omit", data = z[1000*(i-1)+1:1000*i,])
co[i,]<- summary(temp)$coefficient [2:8,1]
}
ループ内で 'cat(i)'を使って、ループの繰り返しを確認してください。また、いくつかの潜在的なエラー: 'naomit'を引用する必要があります。あなたが想像しているのではなく' ata'を 'data'としています。式の各変数の前に 'z $'を付ける必要はありません。私は何が起こっているのかは、それぞれの回帰が40,000行に見えるデータセット全体を実行しているということです。それはしばらく時間がかかります。 – Noah
'data'引数を使うとき、' lm() 'はあなたが描画しているデータセットを知っているので、' z $ 'は必要ありません。代わりに 'ata'を書いたので、' lm() 'はその部分を無視し、' z $ ret'などを見ます。これは、解析したいパーティションだけでなく、データセット内の 'ret'カラム全体を参照します各反復。 – Noah
お返事ありがとうございます。だから、私がz $を削除すると、次のメッセージが表示されます。 "エラーが発生しました。置換の長さ " – Malhuneidi