carolien lavigne
2016-Apr-22 09:15 UTC
[R] npudens(np) Error missing value where TRUE/FALSE needed
Hi,
I am looking for some help concerning the npudens function
in the np package.
I am trying to find a kernel density function of a
multivariate dataset and the density evaluated at each of the 176 points.
I have 2 continuous and 3 ordered discrete variables. My
sample size is 176.
So edata is a 176x(2+3) data frame, while tdat is a 1x(2+3)
vector.
bw_cx[i,] is a 1x (2+3) vector representing the bandwidths h for each variable,
which were calculated using the npcdensbw function. (no this is not a mistake, I
deliberately use the conditional one)
For this I use the below function in R.
kerz <-
npudens(bws=(bw_cx[i,]),cykertype="epanechnikov",cxkertype="epanechnikov",oxkertype="liracine",tdat=tdata,edat=dat)
In version 2.15.2, this worked fine, as I was able to
retrieve the necessary density estimates with kerz$dens.
This version was installed on a very old (read very slow and
about to crash) computer.
I recently installed version 3.2.4 on my new computer, and
now I get the following error message when I try to execute the npudens
function:
Error in if (any(a <= 0)) warning(paste("variable
", which(a <= 0), " appears to be constant", :
missing value where
TRUE/FALSE needed
I suppose some if-statement doesn?t evaluate to a TRUE or
FALSE somewhere in the npudens function.
But as I am not an expert in writing functions, this error
message doesn?t really help.Changing it to the following also doesn't help:
kerz <-
npudens(bws=(bw_cx[i,]),ckertype="epanechnikov",,okertype="liracine",tdat=tdata,edat=dat)
Am I doing something wrong here?
Were some changes made to this function and
do I need to alter some arguments to these changes?
Or might this be a bug?
Thanks!
Carolien
[[alternative HTML version deleted]]
Jim Lemon
2016-Apr-22 23:42 UTC
[R] npudens(np) Error missing value where TRUE/FALSE needed
Hi Carolien, There was a recent request involving a change in the functionality of R that may be relevant to your problem. The usual trigger for the "missing value where TRUE/FALSE needed" error is a conditional expression that doesn't evaluate because of an NA value. As some coercion or summary functions that worked in older versions of R but have been deprecated in more recent ones, your code may be generating NA values at some point where it did not before. Jim On Fri, Apr 22, 2016 at 7:15 PM, carolien lavigne <carolienlavigne at hotmail.com> wrote:> Hi, > > > > I am looking for some help concerning the npudens function > in the np package. > > I am trying to find a kernel density function of a > multivariate dataset and the density evaluated at each of the 176 points. > > I have 2 continuous and 3 ordered discrete variables. My > sample size is 176. > > So edata is a 176x(2+3) data frame, while tdat is a 1x(2+3) > vector. > > bw_cx[i,] is a 1x (2+3) vector representing the bandwidths h for each variable, which were calculated using the npcdensbw function. (no this is not a mistake, I deliberately use the conditional one) > > For this I use the below function in R. > > kerz <- > npudens(bws=(bw_cx[i,]),cykertype="epanechnikov",cxkertype="epanechnikov",oxkertype="liracine",tdat=tdata,edat=dat) > > In version 2.15.2, this worked fine, as I was able to > retrieve the necessary density estimates with kerz$dens. > > This version was installed on a very old (read very slow and > about to crash) computer. > > I recently installed version 3.2.4 on my new computer, and > now I get the following error message when I try to execute the npudens > function: > > > > Error in if (any(a <= 0)) warning(paste("variable > ", which(a <= 0), " appears to be constant", : > > missing value where > TRUE/FALSE needed > > > > I suppose some if-statement doesn?t evaluate to a TRUE or > FALSE somewhere in the npudens function. > > But as I am not an expert in writing functions, this error > message doesn?t really help.Changing it to the following also doesn't help: kerz <- npudens(bws=(bw_cx[i,]),ckertype="epanechnikov",,okertype="liracine",tdat=tdata,edat=dat) > > > > Am I doing something wrong here? > > Were some changes made to this function and > do I need to alter some arguments to these changes? > > Or might this be a bug? > > > > Thanks! > > > > Carolien > [[alternative HTML version deleted]] > > > ______________________________________________ > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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.
Apparently Analagous Threads
- R package 'np' problems
- Confused on using expand.grid(), array(), image() and npudens(np) in my case
- xlim and ylim on npudens (np package)
- Sampling from multi-dimensional kernel density estimation
- package 'np' and point estimation with multiple predictors