I have calculated a joint Probability density function (PDF) for continuous variables using kernel density estimation in R. This data was used as training data to estimate a PDF. Now, my test data has values outside the range of my training data? How do I estimate probability density values for them?

Can extrapolation work here? Or do I need to extend my training data so as to incorporate the entire range? How do I go about that in R?

| cite | improve this question | | | | |

KDE will assign likelihood values to those test points; if you use an unbounded kernel like the Gaussian, it will even give a nonzero likelihood to all of them, though it will get extremely small for test points beyond a few bandwidths from the nearest training point. This more or less makes sense: the model thinks data very different from anything it's ever seen before is unlikely.

If you're not satisfied with that answer – if you want to get higher values of the likelihood – this becomes a question of changing your model to how you want it to work. One option sometimes taken in one dimension is to fit Pareto tails to each extreme. The right thing to use in your case will depend on your data and what you're using the density estimate for.

| cite | improve this answer | | | | |

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.