[R] evaluate NA to FALSE instead of NA?

Sven E. Templer sven.templer at gmail.com
Tue Oct 14 12:04:08 CEST 2014


use:

which(p<=.05)

this will not yield logical, but integer indices without NA

On 14 October 2014 11:51, Rainer M Krug <Rainer at krugs.de> wrote:
> Hi
>
> I want to evaluate NA and NaN to FALSE (for indexing) so I would like to
> have the result as indicated here:
>
> ,----
> | > p <- c(1:10/100, NA, NaN)
> | > p
> |  [1] 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.10   NA  NaN
> | > p[p<=0.05]
> | [1] 0.01 0.02 0.03 0.04 0.05   NA   NA
> | > p[sapply(p<=0.05, isTRUE)]
> | [1] 0.01 0.02 0.03 0.04 0.05  <<<=== I want this
> `----
>
> Is there a way that I can do this more easily then in my example above?
> It works, but it strikes me that there is not a better way of doing
> this - am I missing a command or option?
>
> Thanks,
>
> Rainer
>
> --
> Rainer M. Krug
> email: Rainer<at>krugs<dot>de
> PGP: 0x0F52F982
>
> ______________________________________________
> 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.
>



More information about the R-help mailing list