[R] Sorting Panel Data by Time

David Winsemius dwinsemius at comcast.net
Tue Nov 8 23:28:53 CET 2011


On Nov 8, 2011, at 2:58 PM, economicurtis wrote:

> I have panel data in the following form:
>
> TIME   X1     S1
> 1       1      0.99
> 1       2      0.50
> 1       3      0.01
> 2       3      0.99
> 2       1      0.99
> 2       2      0.25
> 3       3      0.75
> 3       2      0.50
> 3       1      0.25
> ...      ...     ......
>
> And desire a new vector of observations in which one column (S1  
> above) is
> sorted for each second from least to largest.

 > dat$L1 <- unlist (with( dat, tapply(S1, TIME, sort)) )
 > dat
   TIME X1   S1   L1
1    1  1 0.99 0.01
2    1  2 0.50 0.50
3    1  3 0.01 0.99
4    2  3 0.99 0.25
5    2  1 0.99 0.99
6    2  2 0.25 0.99
7    3  3 0.75 0.25
8    3  2 0.50 0.50
9    3  1 0.25 0.75

>
> That is, a new vector (L1 below) of the form:
>
> TIME   X1     S1       L1
> 1       1      0.99    0.01
> 1       2      0.50    0.50
> 1       3      0.01    0.99
> 2       3      0.99    0.25
> 2       1      0.99    0.99
> 2       2      0.25    0.99
> 3       3      0.75    0.25
> 3       2      0.50    0.50
> 3       1      0.25    0.75
> ...      ...     ......    .....
>
> Sorry for the NOOB question, but any help would be great.
>
> Curtis Kephart
>
> --
> View this message in context: http://r.789695.n4.nabble.com/Sorting-Panel-Data-by-Time-tp4017271p4017271.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