Hi there, I have two series of data. plotting the density function of both gives me an idea about the difference of the data. But I would like to quantify the difference I see. a <- rnorm(100) b <- rnorm(100) da <- density(a) db <- density(b) The problem is that da$x and db$x are different and so I have difficulties to compare them... Is there any way to force the density funtion to produce the values for the same x-steps? Or is there any other statistical approach I should use for comparing two density functions? I need to quantify how much the data-series differ (density function is rather complex in my case with skew and several maximas, so not easily to describe as a mathematical function. Sorry, I'm not that deep into statistics. Any comments / keywords on this is welcome... Antje
two densities with same stepsize
3 messages · Antje, Duncan Murdoch, Greg Snow
On 05/02/2008 3:22 AM, Antje wrote:
Hi there, I have two series of data. plotting the density function of both gives me an idea about the difference of the data. But I would like to quantify the difference I see. a <- rnorm(100) b <- rnorm(100) da <- density(a) db <- density(b) The problem is that da$x and db$x are different and so I have difficulties to compare them... Is there any way to force the density funtion to produce the values for the same x-steps?
If you specify n= and from= and to= to be the same, I'd expect that you'd get the same steps. da <- density(a, n=512, from=min(c(a,b)), to=max(c(a,b))) db <- density(b, n=512, from=min(c(a,b)), to=max(c(a,b))) You could also use approxfun or splinefun to convert the density() output into a function that could be evaluated anywhere.
Or is there any other statistical approach I should use for comparing two density functions? I need to quantify how much the data-series differ (density function is rather complex in my case with skew and several maximas, so not easily to describe as a mathematical function. Sorry, I'm not that deep into statistics. Any comments / keywords on this is welcome...
There are a lot of measures of the difference between two distributions. Which one to use depends a lot on the intended purpose. Duncan Murdoch
Duncan told you how to do this using density, another option is to use the logspline package for a different way to estimate densities. With this approach you can use the dlogspline and plogspline functions to compare your density estimates. Hope this helps,
Gregory (Greg) L. Snow Ph.D. Statistical Data Center Intermountain Healthcare greg.snow at imail.org (801) 408-8111 > -----Original Message----- > From: r-help-bounces at r-project.org > [mailto:r-help-bounces at r-project.org] On Behalf Of Antje > Sent: Tuesday, February 05, 2008 1:22 AM > To: r-help at stat.math.ethz.ch > Subject: [R] two densities with same stepsize > > Hi there, > > I have two series of data. plotting the density function of > both gives me an idea about the difference of the data. But I > would like to quantify the difference I see. > > a <- rnorm(100) > b <- rnorm(100) > > da <- density(a) > db <- density(b) > > The problem is that da$x and db$x are different and so I have > difficulties to compare them... Is there any way to force the > density funtion to produce the values for the same x-steps? > Or is there any other statistical approach I should use for > comparing two density functions? I need to quantify how much > the data-series differ (density function is rather complex in > my case with skew and several maximas, so not easily to > describe as a mathematical function. > Sorry, I'm not that deep into statistics. Any comments / > keywords on this is welcome... > > Antje > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >