MATLAB: How to generate samples from multivariate kernel density estimated distribution

gmdistributionmvksdensity

Unlike the univariate counterpart, there is no documentation for how to draw random samples from a multivariate kernel density estimation, as obtained from mvksdensity.
One possibility would be to query the mvksdensity at uniform random points, and accept the samples with the right probability.
Presumably one could replicate the estimated density using gmdistribution, with the number of components equal to the number of samples used in the kernel density estimation. But what is the right variance to use, and how does this relate to the bandwidth parameter used in mvksdensity?

Best Answer

Ok, I've found the answer. The right sigma to use for gmdistribution seems to be bandwidth.^2