[R] Matrix formatting

Tim Sharac timothysharac at mybluelight.com
Wed Feb 12 21:50:13 CET 2003


Hi R-users:

I have a data formatting question. I have a data set that looks something like this:

foo.dat <- cbind(c(NA, 1, 2, 3, 4, 5), c(NA, NA, 0, 10 ,20, 30))

What I have:

     [,1] [,2]
[1,]   NA   NA
[2,]    1   NA
[3,]    2    0
[4,]    3   10
[5,]    4   20
[6,]    5   30


I want to line up the columns by the first value that is not NA. Like so:

     [,1] [,2]
[1,]    1   0
[2,]    2   10
[3,]    3   20
[4,]    4   30
[5,]    5   NA
[6,]    NA  NA

Question is: Is there an elegant way to do this without a for loop?

I tried doing this with na.omit and na.exclude without success.

The real data is many hundreds of columns and many thousands of rows.

Thanks in advance, Tim

Sign up for Internet Service under $10 dollars a month, at http://isp.BlueLight.com




More information about the R-help mailing list