I want to estimate centiles for a single observation after using a finite mixture model (Mixture of 4 Gaussians/normal distributions).
The aim is to graph those values later on.
Below I do the same for an OLS regression and a Quantile Regression.
First I expand the data set by 99 to calculate 99 centiles for each observation
Id2 is the identifier for an observation and idq the quantile.
For the OLS regression I simply take the point estimate and add the centile of the residual.
For the Quantile regression I use the predicted value for the given quantile directly.
My question is: How do I proceed the same way if I have estimated classprobabilities, classpostprobabilities and point estimates given a latent class for each observation. As for OLS the assumption of normality within each group holds.
I'm stuck but somehow I should be able to
1. estimate the parameters of the normal distributions
2. calculate the centiles for a given observation by knowing the classprobabilities for the given observation and the parameters of the normal distributions.
Code:
regress $y3 $x1 $x2 $x3 $x4 predict OLS predict OLSres, res gen id2 = _n expand 99 gen QRden = . gen OLSden = . gen FRMden = . bysort id2: gen idq = _n forvalues q=1/99{ local fq = `q'/100 qui qreg $y3 $x1 $x2 $x3 $x4 if idq==1, q(`q') capture drop aux predict aux replace QRden = aux if idq==`q' qui centile OLSres, centile(`q') replace OLSden = OLS + r(c_1) if idq==`q' }
Any help is appreciated.
Kind regards
Steffen Plützke
0 Response to [FMM] Estimating centiles/graphing density of a single observation
Post a Comment