# [R] Calculating sum of squares from density estimates

Rainer M Krug r.m.krug at gmail.com
Fri Jan 25 08:54:41 CET 2008

```David Winsemius wrote:
> Rainer M Krug <r.m.krug at gmail.com> wrote in
> news:4798991D.3000607 at gmail.com:
>
>> Hi
>>
>> I have some density estimates obtained from density(). I would like
>> to calculate the sum of squares of these. As the x values of the
>> estimates are not the same, and I would prefer not to restrict the
>> estiomate to a certain range of x values, how can I do the
>> calculation?
>>
>> Lets say:
>>
>> d1 <- density(Data1)
>> d2 <- density(Data2)
>>
>> If the x values would be the same, I would:
>>
>> ssq <- sum( (d1\$y - d2\$y)^2 )
>>
>> but as it isn't, I can't do that.
>>
>> is there an easy way to get the sum of squares?
>
> Presumably there is a common domain for these densities. Consider
> forcing the x values to be the same by identically specifying n=,
> from=, and to=?

Thanks - that's what I am doing right now and it is working

>
>> ?density
>> x <- rnorm(200,1,1)
>> x2 <- rnorm(200,1,1)
>> d1 <- density(x, n=512, from=-1, to= 4)
>> d2 <- density(x2, n=512, from=-1, to= 4)
>> ssq <- sum( (d1\$y - d2\$y)^2 )
>> ssq
> [1] 0.4722924
>
>> x <- rnorm(200,1,1)
>> x2 <- rnorm(200,1.5,1)
>> d1 <- density(x, n=512, from=-1, to= 4)
>> d2 <- density(x2, n=512, from=-1, to= 4)
>> ssq <- sum( (d1\$y - d2\$y)^2 )
>> ssq
> [1] 2.111498
>
>

```