DanielBok / copulae

Multivariate data modelling with Copulas in Python
https://copulae.readthedocs.io/en/latest/
MIT License
143 stars 26 forks source link

How to Inverse Normalisation?[Quantile Function] #49

Closed tatesnow closed 2 years ago

tatesnow commented 3 years ago

Hi, Thank you very much for your work! This has helped me immensely! As far as I know, the results of copula are normalized. For example, the range of my data before normalization is [0,100], how can I calculate the probability density corresponding to data 8 after using copula?

tatesnow commented 3 years ago

@jacoblchapman @DanielBok can you help me?

DanielBok commented 3 years ago

Hello. I think you're looking for a quantile function. Currently there's no quantile function provided, if there is, it'll only be an empirical one based off the original data.

Also, pseudo-observations isn't really normalizing it, think of each row vector as a marginal probability. It could be "normalized" to [-0.5, 0.5] for the matter, just that it's easier to work between [0, 1].

For your case, I could add an empirical quantile function when I'm free, but otherwise, you could just try "inverse" normalizing it. :)