On Jan 25, 2011, at 2:25 PM, Ryan Utz wrote:

Hi R-users,

I'm trying to find an elegant way to count the number of rows in a dataframe
with a unique combination of 2 values in the dataframe. My data is
specifically one column with a year, one with a month, and one with a day. I'm trying to count the number of days in each year/month combination. But
for simplicity's sake, the following dataset will do:

x<-c(1,1,1,1,2,2,2,2,3,3,3,3)
y<-c(1,1,2,2,3,3,4,4,5,5,6,6)
z<-c(1,2,3,4,5,6,7,8,9,10,11,12)
X<-data.frame(x y z)

So with dataset X, how would I count the number of z values (3rd column in
X) with unique combinations of the first two columns (x and y)? (for
instance, in the above example, there are 2 instances per unique combination of the first two columns). I can do this in Matlab and it's easy, but since
I'm new to R this is royally stumping me.

> tapply(X$z, list(X$x, X$y), function(xx) length(unique(xx)) )
   1  2  3  4  5  6
1  2  2 NA NA NA NA
2 NA NA  2  2 NA NA
3 NA NA NA NA  2  2


Thanks,
Ryan

--
Ryan Utz
Postdoctoral research scholar
University of California, Santa Barbara
(724) 272 7769

        [[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.

David Winsemius, MD
West Hartford, CT

______________________________________________
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