拟合模型下新数据集的概率(密度)

时间:2017-02-15 02:04:50

标签: r lm lme4

考虑到R中的拟合模型(即类的对象' lm',' glm',' merMod'等),我试图想象如何计算新数据集的概率。

也就是说,我希望通过将模型拟合到数据集A获得的参数估计值下的数据集B的概率(密度)。我知道如何一般地执行此操作,但我想知道一个简单的预先存在的函数是否可以在R中这样做。有一个简单的功能吗?

This question非常相似,但我想在R中执行此操作。

1 个答案:

答案 0 :(得分:0)

对于线性回归模型lm,您可以使用以下函数来确定和可视化似然,假设线性模型拟合的残差是正态分布的(这些函数是从this R Blogger Post改编而来的;理由该程序可以在this post)中找到:

log_lik <- function(beta0, beta1, mu, sigma) {
  ## beta0 and beta1 require intial guesses
  R <- y - x * beta1 - beta0
  R <- dnorm(R, mu, sigma, log=T)
  return(-sum(R))
}
library(stats4)
fit <- mle(log_lik, start=list(beta0=4, beta1=2, mu = 0, sigma=1))
summary(fit)
## mu will be your estimated likelihood
## sigma will be uncertainty

对于glmthis post in Cross Validated为可能性提供用户定义的R函数。

(ps:如果你能提供一个涉及lmglm之一的特定例子,那就太好了。如果你只是想知道这些模型,Cross Validated,Mathematics,或数据科学可能是更好的地方。)