1

この問題は、次のコードを使用して示されています。これを実行すると、lm は予測を適切に処理し、gls は失敗することがわかります。これはおそらく predict.gls の問題ですが、その理由はわかりません。これは、factor 呼び出しを使用する場合にのみ問題になります。それがなければ、すべてうまくいきます。すべてのレベルが新しいデータセットに存在しないため、predict.gls が失敗することはかなり確信しています。しかし、lmはうまくいきます。私にはバグのように感じますが、それを判断するのに十分なほど gls コードに習熟していません。

library(nlme)

# lm example
myfit<-lm(mpg~factor(cyl):disp+hp, data=mtcars)
mypred<-predict(myfit, mtcars[1:3, 1:7])

# gls example
myfit2<-gls(mpg~factor(cyl):disp+hp, data=mtcars)
mypred2<-predict(myfit2, mtcars[1:3, 1:7])

次のエラーで失敗します。

# Error in X[, names(cf), drop = FALSE] : subscript out of bounds

何か案は?

私の R.version 出力:

platform x86_64-pc-linux-gnu
arch x86_64
os linux-gnu
system x86_64, linux-gnu
status
major 3
minor 0.2
year 2013
month 09
day 25
svn rev 63987
language R
version.string R version 3.0.2 (2013-09-25 )愛称フリスビーセーリング

nlme パッケージ バージョン: 「パッケージ 'nlme' バージョン 3.1-113」

4

1 に答える 1