[R] binary operators that never return missing values
Rui Barradas
ruipbarradas at sapo.pt
Thu Jun 21 00:16:45 CEST 2012
Hello, again.
I have two apologies, to the list for having forgotten to cc my previous
reply to this thread, and to you for not having understood that you
wanted it solved in one step. My solution would need two steps.
Now revised.
no.na <- function(x, value=FALSE){x[is.na(x)] <- value; x}
no.na(a > b)
x <- (a > b)
x <- ifelse( is.na( x ) , F , x )
identical( x, no.na(a > b) )
[1] TRUE
Hope this helps,
Rui Barradas
Em 20-06-2012 21:44, Anthony Damico escreveu:
> Hi, I work with data sets with lots of missing values. We often need
> to conduct logical tests on numeric vectors containing missing values.
> I've searched around for material and conversations on this topic,
> but I'm having a hard time finding anything. Has anyone written a
> package that deals with this sort of thing? All I want are a group of
> functions like the ones I've posted below, but I'm worried I'm
> re-inventing the wheel.. If they're not already on CRAN, I feel like
> I should add them. Any pointers to work already completed on this
> subject would be appreciated. Thanks!
>
> Anthony Damico
> Kaiser Family Foundation
>
>
>
> Here's a simple example of what I need done on a regular basis:
>
> #two numeric vectors
> a <- c( 1 , NA , 7 , 2 , NA )
>
> b <- c( NA , NA , 9 , 1 , 6 )
>
> #this has lots of NAs
> a > b
>
> #save this result in x
> x <- (a > b)
>
> #overwrite NAs in x with falses (which we do a lot)
> x <- ifelse( is.na( x ) , F , x )
>
> #now x has only trues and falses
> x
>
>
>
> ################
> Here's an example function that solves the problem for "greater than"
> ################
>
>
> #construct a function that performs the same steps:
> "%>F%" <-
> function( a , b ){
>
> x <- (a > b)
>
> x.false <- ifelse( is.na( x ) , F , x )
>
> x.false
>
> }
>
> #run the function
>
> a %>F% b
>
> ______________________________________________
> 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