3
モデルが実際のデータにどれほど適しているかを視覚化するために、新しいy予測(および信頼区間)を作成するために使用したいgamlssモデルがあります。元のデータではなく、ランダム化されたプレディクタ値の新しいデータセットから予測を行いたいのですが、エラーメッセージが表示されています。ここではいくつかのサンプルコードがあります:R gamlssオブジェクトから新しい適合値を予測する際のエラー
library(gamlss)
# example data
irr <- c(0,0,0,0,0,0.93,1.4,1.4,2.3,1.5)
lite <- c(0,1,2,2.5)
blck <- 1:8
raw <- data.frame(
css =abs(rnorm(500, mean=0.5, sd=0.1)),
nit =abs(rnorm(500, mean=0.72, sd=0.5)),
irr =sample(irr, 500, replace=TRUE),
lit =sample(lite, 500, replace=TRUE),
block =factor(sample(blck, 500, replace=TRUE))
)
# the model
mod <- gamlss(css~nit + irr + lit + random(block),
sigma.fo=~irr*nit + random(block), data=raw, family=BE)
# new data (predictors) for making css predictions
pred <- data.frame(
nit =abs(rnorm(500, mean=0.72, sd=0.5)),
irr =sample(irr, 500, replace=TRUE),
lit =sample(lite, 500, replace=TRUE),
block =factor(sample(blck, 500, replace=TRUE))
)
# make predictions
predmu <- predict(mod, newdata=pred, what="mu", type="response")
これは、次のエラーを与える:私は私の実際のデータでこれを実行すると
Error in data[match(names(newdata), names(data))] :
object of type 'closure' is not subsettable
、それはこのわずかに異なるエラーを与える:
Error in `[.data.frame`(data, match(names(newdata), names(data))) :
undefined columns selected
I predict
をnewdata
なしで使用すると、次のように元のデータに対して予測が正しく行われます。
predmu <- predict(mod, what="mu", type="response")
私は予測が間違っていますか?どんな提案も大歓迎です!ありがとうございました。
バマー!さて、検証と情報、@ヘッジホッグのおかげで!私はその後、このモデルをlmer()に移しました。しかし、これをうまく動かすことが大切です。 – BonnieM