2016-10-12 6 views
0

私はRの初心者です サンプルの一部を使用してモデルを構築し、残りのサンプルを使用して応答を予測しようとしました。私は()の予測に使用する場合でも、私は警告メッセージが表示されました:警告-----新しいデータ行<>変数行

「NEWDATAは」152行を持っていたが、見つかった変数は354行

を持って助けてください、私はいくつかの回答を検索しましたが、私はまだTTを理解することはできません

library(MASS) 
data(Boston) 

n <- nrow(Boston) 
n_train <- round(.70*n) 
train_set <- sample(n,size=n_train,replace = FALSE) 

x <- cbind(Boston$lstat,log(Boston$lstat)) 
y <- Boston$medv 

x_train <- x[train_set,] 
y_train <- y[train_set] 

x_test <- x[-train_set,] 
y_test <- y[-train_set] 

lm_temp <- lm(y_train~x_train) 
y_test_hat <- predict(lm_temp,newdata=data.frame(x_test)) 

答えて

2

あなたが独立変数として行列を渡したときにRが混乱してきているように見えますが、その後、インクルード関数は(リスト)でデータフレームを必要と予測します。

あなたは

library(MASS) 
data(Boston) 

n <- nrow(Boston) 
n_train <- round(.70*n) 
train_set <- sample(n,size=n_train,replace = FALSE) 

data <- Boston[ , c('medv', 'lstat')] 
data$loglstat <- log(data$lstat) 

train <- data[train_set, ] 
test <- data[-train_set,] 

lm_temp <- lm(medv ~ ., data = train) 
y_test_hat <- predict(lm_temp,newdata=test) 
+0

はあなたの助けのためにたくさんの感謝のデータフレームであなたのLMを実行することで問題を解決することができます! –

関連する問題