私は.csv
ファイルを持っており、Rの入力はライブラリdata.table
からfread()
関数を使用しました。
R階段回帰モデル列名(データテーブル)
8928 obs
と71 variable
でRに入力したファイル。 DT
と呼ばここ
は71列と8928行のデータ内容である:
01F0017S 01F0029S 01F0061S ... 01F3676S 01F3686S 01F3736S
49.25 47.58 119.00 116.77 34.00 188.44
....
52.25 49.40 199.18 ... 118.83 33.10 186.13
その後、私はでTrainDT
とPracticeDT
と呼ばれる2つのdata.table
を作成しました:私はループのために書いた
TrainDT<-DT[1:round(0.7*nrow(DT),0)]
PracticeDT<-DT[round(0.7*nrow(DT),0):nrow(DT)]
ステップワイズ回帰モデルstep()
とpredict()
に適合するようにします。
フィットモデルフォローステップとして:
ステップ1:
Iは、2673 obs
とdata.table TrainModel
にTrainDT
をシフト72 variables
とcbind()
新しい列が01F0017S_y
TrainModel<-cbind(setnames(TrainDT[7:nrow(TrainDT),i,with=F],paste0(names(DT[1,i,with=FALSE]),'_y')),TrainDT[1:(nrow(TrainDT)-6),1:length(TrainDT),with=F])
と呼ば
内容量:TrainModel
:
01F0017S_y 01F0017S 01F0029S 01F0061S ... 01F3676S 01F3686S 01F3736S
43.74 49.25 47.58 119.00 116.77 34.00 188.44
....
44.55 52.25 49.40 199.18 ... 118.83 33.10 186.13
ステップ2:ここでは
は私の問題である:
私は次のように回帰モデルとstep(lm,direction='both')
スクリプトに合わせてlm
を使用します。
Fitmodel<-lm(`01F0017S_y`~.,data=TrainModel)
stepwise<-step(Fitmodel,sacle=0,direction = 'both')
は、どのように私はこれを行うことができます線形モデルを使用して、異なる名前の階段回帰を列_y
と適合させるか?例えば
:私が書く
Fitmodel<-lm(`01F0017S_y`~.,data=TrainModel)
Fitmodel<-lm(`01F0029S_y`~.,data=TrainModel)
Fitmodel<-lm(`01F0061S_y`~.,data=TrainModel)
ループが自動的に_y
でそれらの変数を作成しますが、繰り返しに割り当てる方法を知らないだろう。
変数_y
を割り当てる方法を試していますが、応答変数を変数_y
に設定するため、常に失敗します。
ex。Fitmodel<-lm(TrainModel[[1]]~.,data=TrainModel)
_y
は
:
x<-paste(names(DT[1,1,with=FALSE]),'_y',sep ='')
ModelTest_8<-lm(`x`~.,data=TrainModel)
エラー情報付き:
そして、私はこの方法を試してみてください
異なる_y
のステップワイズ回帰を反復するにはどうすればよいですか?
ありがとうございます。再生可能なデータが存在しない場合には