Re: [R] basic help

From: Chuck Cleland <ccleland_at_optonline.net>
Date: Thu, 20 Mar 2008 04:39:59 -0400

On 3/20/2008 12:59 AM, ΧžΧ•Χ˜Χ™ ΧΧ‘Χ•ΧœΧ™ΧŸ wrote:
> Hi,
> I am a new R user (used SPSS for many years) and I need help.
> I have a data frame mydata with 8 variables m2008:m2001
> I wanted to add a new variable mydata$firstvalid that tells me what is the
> first non missing variable for each case (without using for-next).
> I tried many variations of this:
> lst = paste("m",2008:2001,sep="")
> mydata$firstvalid = match(FALSE, is.na(mydata[lst]),0)
> Instead of a different value for each case, I get the same value for all
> cases - the first non missing value in the whole data frame.
> Many thanks,
> Moti Assouline

X <- as.data.frame(matrix(sample(c(NA,NA,1:5), 100, replace=TRUE), ncol=5))

X

    V1 V2 V3 V4 V5
1 NA NA NA NA NA
2 2 4 NA 3 3
3 2 3 NA NA NA
4 4 3 2 NA 2
5 2 3 2 NA NA
6 5 3 2 5 NA
7 NA 5 NA 3 3
8 3 NA 3 2 2
9 4 5 5 NA 3
10 2 5 NA NA 1
11 1 2 NA NA 2
12 2 4 NA 5 2
13 NA 5 NA NA NA
14 5 5 4 5 NA
15 2 NA 5 2 NA
16 NA 1 4 NA NA
17 NA 5 NA 5 NA
18 5 2 NA 4 1
19 3 5 2 4 5
20 4 NA 2 1 NA

X$FVALID <- apply(is.na(X), 1, function(x){ifelse(all(x), 0, which.min(x))})

X

    V1 V2 V3 V4 V5 FVALID

1  NA NA NA NA NA      0
2   2  4 NA  3  3      1
3   2  3 NA NA NA      1
4   4  3  2 NA  2      1
5   2  3  2 NA NA      1
6   5  3  2  5 NA      1
7  NA  5 NA  3  3      2
8   3 NA  3  2  2      1
9   4  5  5 NA  3      1
10  2  5 NA NA  1      1
11  1  2 NA NA  2      1
12  2  4 NA  5  2      1
13 NA  5 NA NA NA      2
14  5  5  4  5 NA      1
15  2 NA  5  2 NA      1
16 NA  1  4 NA NA      2
17 NA  5 NA  5 NA      2
18  5  2 NA  4  1      1
19  3  5  2  4  5      1
20  4 NA  2  1 NA      1

> Checked by AVG.
>
> 20:52
>
> ______________________________________________
> 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.

-- 
Chuck Cleland, Ph.D.
NDRI, Inc. (www.ndri.org)
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 512-0171 (M, W, F)
fax: (917) 438-0894

______________________________________________
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.
Received on Thu 20 Mar 2008 - 08:43:13 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 20 Mar 2008 - 20:30:22 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive