Tell me more ×
Cross Validated is a question and answer site for statisticians, data analysts, data miners and data visualization experts. It's 100% free, no registration required.

I have adjusted the parameters (lambda, mu, sigma) for a mixture of two normals fitted to my data. Now I would like to plot the cdf of this model using the explicit function instead of the ecdf. Is there any way to do this or I do I have to simulate data so then I can use again ecdf?

The explicit function is something like:

ipc_values_EM\$lambda[1] * dnorm(x, ipc_values_EM\$mu[1], ipc_values_EM\$sigma[1]) 
+
ipc_values_EM\$lambda[2] * dnorm(x, ipc_values_EM\$mu[2], ipc_values_EM\$sigma[2]) 

(as you can note, is the mixture of two normals different mus and different sigmas)

share|improve this question

2 Answers

up vote 5 down vote accepted

Like the title of the function ecdf() says, it is empirical and only runs on samples.

If you want the exact cdf of a Gaussian, the function you are looking for is pnorm(). Here is a demonstration.

x <- seq(from=-5, to=5, by=.1)
y <- pnorm(x)
plot(x, y, type='l')

If you replace dnorm() by pnorm() in your code, and x by the range of values you want to take the cdf over you should get the result you are looking for.

share|improve this answer
1  
I tried a little different approach but with the same spirit in mind, just used the curve() function and the code is as follows: curve(ipc_values_EM\$lambda[1] * pnorm(x, ipc_values_EM\$mu[1], ipc_values_EM\$sigma[1]) + ipc_values_EM\$lambda[2] * pnorm(x, ipc_values_EM\$mu[2], ipc_values_EM\$sigma[2]), from=-0.10, to=0.07, add=TRUE, col="blue") – natorro May 21 '12 at 10:12

You might be interested in using the distr package for plotting the theoretical distribution functions for mixture distributions. Here is a quick example:

library(distr)
tmp <- UnivarMixingDistribution( Norm(10,2), Norm(15,1), mixCoeff=c(1,2)/3)
plot(tmp)

enter image description here

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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