From ecu at info.fundp.ac.be  Thu May 18 16:51:02 2006
From: ecu at info.fundp.ac.be (ecu at info.fundp.ac.be)
Date: Thu, 18 May 2006 16:51:02 +0200 (CEST)
Subject: [Rd] Negatives density values (PR#8876)
Message-ID: <20060518145102.B2AF8CD3B@slim.kubism.ku.dk>

Full_Name: Cuvelier Etienne
Version: R version 2.2.1
OS: Windows XP
Submission from: (NULL) (81.240.71.204)


If we use the "density" function "far" from the data, some values are
negatives.
I know that these value of the density are "near equal" to zero, but the change
of sign can involve some "false" decision.

Here is an example of this fact:


> x = c(0.006, 0.002, 0.024, 0.02, 0.034, 0.09, 0.074, 0.072, 0.122,
+ 0.048, 0.044, 0.168)
> 
> min(x)
[1] 0.002
> max(x)
[1] 0.168
> 
> result = density(x,n=20, from = -1 , to = 1)
> 
> result$y
 [1]  2.433854e-17  1.726562e-17  1.285227e-16  2.359248e-16
 [5]  4.628709e-17 -1.535879e-16  1.438105e-16  2.023210e-16
 [9]  2.649354e-11  1.438340e-01  7.679909e+00  1.767860e+00
[13]  2.056151e-04 -1.407219e-16 -3.575895e-18 -1.979607e-16
[17] -1.574544e-17 -2.257917e-17 -2.305234e-16  4.052727e-18
>
> #A plot of the "fluctuations" near zero
> plot(result$x,result$y,type="l",xlim=c(-1,1),ylim=c(-10^-14,10^-14))
> abline(h=0)
>
> #All neagtives value of density are "near equal" to zero 
> all(apply(as.matrix(result$y[result$y<0]),1,all.equal, target=0)==TRUE)
[1] TRUE


>  sessionInfo()
R version 2.2.1, 2005-12-20, i386-pc-mingw32

attached base packages:
[1] "methods"   "stats"     "graphics"  "grDevices" "utils"
[6] "datasets"  "base"

> Sys.info()
                      sysname                       release 
                    "Windows"                      "NT 5.1" 
                      version                      nodename 
"(build 2600) Service Pack 2"                       "WINXP" 
                      machine                         login 
                        "x86"                     "Etienne" 
                         user 
                    "Etienne" 

> R.Version()
$platform
[1] "i386-pc-mingw32"

$arch
[1] "i386"

$os
[1] "mingw32"

$system
[1] "i386, mingw32"

$status
[1] ""

$major
[1] "2"

$minor
[1] "2.1"

$year
[1] "2005"

$month
[1] "12"

$day
[1] "20"

$"svn rev"
[1] "36812"

$language
[1] "R"



[Rd] Negatives density values (PR#8876)
ecu at info.fundp.ac.be