問題
R で線形回帰をトレーニングして、データ フレームの変数this.target
から予測しました。このトレーニングは、 で指定されたデータのサブセットに対して行われます。city
data
train.index
model = glm('data[, this.target] ~ data$city', data = data, subset = train.index)
で指定された保留データでこのモデルをテストしようとしていますtest.index
。
predictions = predict(model, data[test.index, ])
何らかの理由で、この 2 番目の手順でエラーと警告が発生します。
Error in model.frame.default(Terms, newdata, na.action = na.action, xlev =
object$xlevels) : invalid type (NULL) for variable 'data$city' In addition:
Warning message: 'newdata' had 22313 rows but variables found have 0 rows
私の分析
data$city
は 4 レベルの因数ですが、この変数の観測値が NULL ではないにもかかわらず、R はそれを「無効な型 (NULL)」として読み取るようです。
さらに、R は行を読み取るが、トレーニング セットの列を正しく読み取らないようです。dim(data[test.index, ])
22313 と 12 のベクトルを生成します。