Mark -
   Does this do what you want?

dat = data.frame(X1=c(1,1),X2=c(1,1),X3=c(1,1),
                 X4=c(0,1),X5=c(NA,NA),x6=c(NA,1))

fixit = function(x){
     y = c(x[-1],0)
     x[is.na(y) & is.na(x)] = 0
     x}

t(apply(dat,1,fixit))

     X1 X2 X3 X4 X5 x6
[1,]  1  1  1  0  0  0
[2,]  1  1  1  1 NA  1


                                        - Phil Spector
                                         Statistical Computing Facility
                                         Department of Statistics
                                         UC Berkeley
                                         spec...@stat.berkeley.edu



On Tue, 23 Mar 2010, Mark Na wrote:

Dear R-helpers,

I have a dataframe like this:

ID  X1  X2  X3  X4  X5  X6
49  1   1   1   0   NA  NA
50  1   1   1   1   NA  1

I would like to convert a missing value (NA) that follows a 0 (zero) or
another missing value (NA) into a 0 (zero).

So, the above lines would be converted to:

ID  X1  X2  X3  X4  X5  X6
49  1   1   1   0   0   0
50  1   1   1   1   NA  1

I have been struggling with this all morning, so any help you could provide
would be much appreciated.

Thank you!

Mark Na

        [[alternative HTML version deleted]]

______________________________________________
R-help@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.


______________________________________________
R-help@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.

Reply via email to