[R] If I known d1 (density1), and dmix is a mix between d1 and d2 (d2 is unknown), can one infer d2?

Emmanuel Levy emmanuel.levy at gmail.com
Thu Oct 23 02:22:50 CEST 2008

Dear All,

I hope the title speaks by itself.

I believe that there should be a solution when I see what Mclust is
able to do. However, this problem is quite
particular in that d3 is not known and does not necessarily correspond
to a common distribution (e.g. normal, exponential ...).
However it must look like dmix and d1 to some extent.

To illustrate my problem I worked out a simple example:

Imagine that there are two classes of people:
(i) fast walkers: they achieve a unit distance in a given distribution
of unit time (d1).
(ii) slow walkers: they achieve a unit distance in another
distribution of longer times (d2), cf example below.

If I have a mixed sample that contain X% of fast walkers and (100-X)%
of slow walkers, *is it possible to use it to estimate d2, as well as

R example:
walk.fast = sample(seq(1,5,length.out=1000),
prob=dlnorm(seq(1,5,length.out=1000)), replace=T)
walk.slow = sample(seq(1,5,length.out=1000),
prob=dlnorm(seq(1,5,length.out=1000), meanlog=1.2), replace=T)

percentage.fast =0.8
walk.all = c(sample(walk.fast, percentage.fast*1000),
sample(walk.slow, (1-percentage.fast)*1000 ) )

plot(density(walk.fast, from=1, to=5))                          # d1
lines(density(walk.slow, from=1, to=5), col=2)             # d2
lines(density(walk.all, from=1, to=5), col=3)                # dmix,
mix between d1 and d2

Is there a method that could allow me to estimate d2 given dmix?

Any hint would be greatly appreciated.



More information about the R-help mailing list