[R] I bet apply has a solution

Petr PIKAL petr.pikal at precheza.cz
Tue Feb 7 08:25:39 CET 2012


Hi

 as.logical(rowSums(apply(Data, 2, diff)>0))

here is another option.

Regards
Petr


> 
> Hi all 
> For the data below, I would like to return a logical value indicating
> differences in the data.
> 
> #Create data
> Data..<-data.frame(a=rep(1,10),b=c(rep(1,9),2),c=c(rep(1,8),2,2))
> 
>    a b c
> 1  1 1 1
> 2  1 1 1
> 3  1 1 1
> 4  1 1 1
> 5  1 1 1
> 6  1 1 1
> 7  1 1 1
> 8  1 1 1
> 9  1 1 2
> 10 1 2 2
> 
> 
> So what I want is to return logical value telling me if all the values 
are
> the same.  So the result would be a b c DidChange
> 1  1 1 1     FALSE
> 2  1 1 1     FALSE
> 3  1 1 1     FALSE
> 4  1 1 1     FALSE
> 5  1 1 1     FALSE
> 6  1 1 1     FALSE
> 7  1 1 1     FALSE
> 8  1 1 1     FALSE
> 9  1 1 2      TRUE
> 10 1 2 2      TRUE
> 
> I bet apply could handle this elegantly but that family of functions is
> still not 100% intuitive to me.  Thoughts.  Thanks everyone
> 
> Cheers, 
>  Josh
> 
> 
> --
> View this message in context: http://r.789695.n4.nabble.com/I-bet-apply-
> has-a-solution-tp4362294p4362294.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.



More information about the R-help mailing list