I applied 10-fold cross validation by using cv.glm() function in the linear regressions.

I am able to obtain the MSE in this way, mse=cv.glm(data,model,K=10)$delta

However, if I applied transformation on the y variable (such as log) in my model, the generated MSE is the MSE based on log(y), right?

How can I get the MSE for the y variable in this case? I do not think simply apply exp(mse) here is a good solution

  • $\begingroup$ Basically you used a different variable in your second model, so it makes little sense to estimate a RMSE on a different scale. Why would you want this anyway? $\endgroup$ – user2974951 Oct 22 '18 at 8:41
  • $\begingroup$ We build different linear regression models, and try to compare them base d on 10 fold cross validation.However, we applied a log transformation on the y variable for one of these models. Finally, the MSE values by using cv.glm actually tell the MSE on the log(y), not the y variable $\endgroup$ – neverwin Oct 22 '18 at 14:39
  • $\begingroup$ If the reason for log transformation is to use linear regression rather than non-linear regression, then the log(y) is an artifact of your modeling process. If this is the reason for the log transform, then you would need to de-transform the regression result and manually calculate the modeling statistics - in effect, the modeling process is incomplete without the de-transform. $\endgroup$ – James Phillips Oct 22 '18 at 14:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.