glm.fit() 関数を使用して R で glm モデルを構築しました。
m <- glm.fit(x = as.matrix(df[,x.id]), y = df[,y.id], family = gaussian())
その後、以下を使用していくつかの予測を試みました (s を正しく選択したかどうかはわかりません)。
predict.glm(m, x, s = 0.005)
エラーが発生しました:
Error in terms.default(object) : no terms component nor attribute
ここでhttps://stat.ethz.ch/pipermail/r-help/2004-September/058242.html問題の解決策を見つけました:
predict.glm.fit<-function(glmfit, newmatrix){
newmatrix<-cbind(1,newmatrix)
coef <- rbind(1, as.matrix(glmfit$coef))
eta <- as.matrix(newmatrix) %*% as.matrix(coef)
exp(eta)/(1 + exp(eta))
}
しかし、 glm.fit を使用して後で予測できないかどうかはわかりません。なぜそれが可能か不可能なのですか?また、s を正しく選択するにはどうすればよいでしょうか。
注: glm() 関数を使用すると、この問題を回避できます。しかし、 glm() 関数は数式を要求するため、場合によってはあまり便利ではありません。まだ誰かが後で glm.fit と予測を使用したい場合は、ここにいくつかの解決策があります: https://stat.ethz.ch/pipermail/r-help/2004-September/058242.html