[R] creating a count variable in R

Bill.Venables at csiro.au Bill.Venables at csiro.au
Fri Mar 4 00:03:20 CET 2011


You can probably simplify this if you can assume that the dates are in sorted order.  Here is a way of doing it even if the days are in arbitrary order.  The count refers to the number of times that this date has appeared so far in the sequence.

con <- textConnection("
01/01/2011
01/01/2011
02/01/2011
02/01/2011
02/01/2011
02/01/2011
03/01/2011
03/01/2011
03/01/2011
03/01/2011
03/01/2011
03/01/2011
03/01/2011
")
days <- scan(con, what = "")
close(con)
X <- model.matrix(~days-1)
XX <- apply(X, 2, cumsum)
dat <- data.frame(days = days, count = rowSums(X*XX))
dat

###
this uses days as a character string vector.  If they are actual dates, then convert them to character strings for this operation.

Bill Venables. 

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of JonC
Sent: Friday, 4 March 2011 7:58 AM
To: r-help at r-project.org
Subject: [R] creating a count variable in R

Hi R helpers,

I'm trying to create a count in R , but as there is no retain function like
in SAS I'm running into difficulties.

I have the following :

Date_var                           and wish to obtain      Date_var         
Count_var 
01/01/2011                                                       01/01/2011     
1
01/01/2011                                                       01/01/2011     
2
02/01/2011                                                       02/01/2011     
1
02/01/2011                                                       02/01/2011     
2
02/01/2011                                                       02/01/2011     
3
02/01/2011                                                       02/01/2011     
4
03/01/2011                                                       03/01/2011     
1
03/01/2011                                                       03/01/2011     
2
03/01/2011                                                       03/01/2011     
3
03/01/2011                                                       03/01/2011     
4
03/01/2011                                                       03/01/2011     
5
03/01/2011                                                       03/01/2011     
6
03/01/2011                                                       03/01/2011     
7

As can be seen above the count var is re initialised every time a new date
is found. I hope this is easy.

Many thanks in advance for assistance. It is appreciated. 

Cheers

Jon 


--
View this message in context: http://r.789695.n4.nabble.com/creating-a-count-variable-in-R-tp3334288p3334288.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