2017-02-24 18 views
0

が列を選択することで予測する予測を実行しようとすると:次のことを実行しようとしました

ここで前のコードです:この2行に

model <- glm(Automatable1Y0N ~.,family=binomial(link='logit'),data=train) 
data <- subset(training.data.raw,select=c(5,6,7,8,10,12,27)) 
train <- data[1:800,] 
test <- data[801:957,] 

model <- glm(Automatable1Y0N ~.,family=binomial(link='logit'),data=train) 
anova(model, test="Chisq") 

NO問題が。

fitted.results <- predict(model,newdata=subset(test,select=c(5,6,7,8,10,12)),type='response') 

が、私はこのエラーを受けています:私は、これはライン予測実行したときと

Error in `[.data.frame`(x, r, vars, drop = drop) : undefined columns selected 

を誰かが助けてくださいことはできますか?ありがとう。

私はこのサブセットコマンドを抽出しようとした:

> newdata <-subset(test,select=c(5)) 
> newdata <-subset(test,select=c(5,6)) 
> newdata <-subset(test,select=c(5,6,7)) 
> newdata <-subset(test,select=c(5,6,7,8)) 
Error in `[.data.frame`(x, r, vars, drop = drop) : 
    undefined columns selected 
+1

おそらく 'model'と' newdata'の間で変数名の不一致があります。しかし、再現可能な例がなければ、これを確認するのは難しいです。 –

+0

編集していただきありがとうございますが、これは私たちのシステムで問題を再現するのに役立ちます。例えば、 'train'と' test'オブジェクトはありません。詳細については、[here](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)を参照してください。 –

答えて

0

私はそのエラーを引き起こしているものを参照してください:私は、エラーが思い付いたときだ列8を追加したときにここで

newdata <-subset(test,select=c(5,)) 

は結果であり、コマンド:ここ

data <- subset(training.data.raw,select=c(5,6,7,8,10,12,27)) 

このコマンドから、今7つの列があります。

fitted.results <- predict(model,newdata=subset(test,select=c(5,6,7,8,10,12)),type='response') 

代わりに、元の列を指定するデータセットは今7列を持っているので、それは今

select=c(1,2,3,4,5,6,7) 

でなければなりません。 @Paulを通じてフィードバックをお寄せいただきありがとうございます