[R] the first. from SAS in R
David Winsemius
dwinsemius at comcast.net
Tue Nov 23 15:12:09 CET 2010
On Nov 23, 2010, at 8:33 AM, Joel wrote:
>
> Is there any similar function in R to the first. in SAS?
>
> What it dose is:
>
> Lets say we have this table:
>
> a b c
> 1 1 5
> 1 0 2
> 2 0 2
> 2 0 NA
> 2 9 2
> 3 1 3
>
>
> and then I want do to do one thing the first time the number 1
> appers in a
> and something else the secund time 1 appers in a and so on.
>
> so
>
> something similar to:
>
> if first.a {
> a$d<-1
> }else{
> a$d<-0
> }
>
The duplicated function which returns a logical vector with those
features can easily be coerced to numeric.
df$d <- as.numeric(!duplicated(df$a))
I was a bit puzzled about my failure to get coercion by the method
which I thought was supposed to work, namely adding 0.
df$e <- !duplicated(df$a)+0 # does not coerce
df$e <- 0 + !duplicated(df$a) # pre-adding 0 does coerce
Maybe the rules on coercion were amended.
--
David
> This would give me
>
> a b c b
> 1 1 5 1
> 1 0 2 0
> 2 0 2 1
> 2 0 NA 0
> 2 9 2 0
> 3 1 3 1
>
> Is there such a function in R or anything similar?
>
>
> thx
>
> //Joel
>
> --
> View this message in context: http://r.789695.n4.nabble.com/the-first-from-SAS-in-R-tp3055417p3055417.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> 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.
David Winsemius, MD
West Hartford, CT
More information about the R-help
mailing list