Is there an easy way to calculate likelihood value for a hold out dataset?

96 views Asked by At

I would like to calculate the held-out likelihood value or log-likelihood value of a fitted model against a hold out dataset. Below is a simplified example:

     tr = data.frame(y=rnorm(100, 10, 1), x=1)
     tst = data.frame(y=rnorm(50, 9, 1), x=1) 
     lmx <- lm(y ~ x, data=tr)
     logLik(lmx) # it gives the log likelihood value of training data
#> 'log Lik.' -140.2452 (df=2)
     logLik(lmx, newdata=tst) # **It does not work!!!**
#> 'log Lik.' -140.2452 (df=2)

Created on 2020-10-18 by the reprex package (v0.3.0)

I can write out the loglikelihood function and evaluate dataset y against it. But I am hoping that it can be done a simpler way in some R packages.

0

There are 0 answers