# [R] cumulative sum by group and under some criteria

arun smartpink111 at yahoo.com
Tue Feb 19 06:05:32 CET 2013

```Hi,

If you don't want the m1=3, n1=3 combination in the final dataset:
library(plyr)
res2<- join(res1,d3,by=c("m1","n1"),type="inner")
tail(res2)
#    m1 n1 x1 y1 m n x y cterm1_P0L cterm1_P1L cterm1_P0H cterm1_P1H
#235  3  2  2  1 5 4 3 1   0.857375      0.512     0.9025       0.64
#236  3  2  2  1 5 4 3 2   0.857375      0.512     0.9025       0.64
#237  3  2  2  1 5 4 3 3   0.857375      0.512     0.9025       0.64
#238  3  2  2  1 5 4 4 1   0.857375      0.512     0.9025       0.64
#239  3  2  2  1 5 4 4 2   0.857375      0.512     0.9025       0.64
#240  3  2  2  1 5 4 4 3   0.857375      0.512     0.9025       0.64
A.K.

----- Original Message -----
From: Zjoanna <Zjoanna2013 at gmail.com>
To: r-help at r-project.org
Cc:
Sent: Monday, February 18, 2013 10:36 PM
Subject: Re: [R] cumulative sum by group and under some criteria

Thanks. I tried this code below, why does expanded dataset 'res1' has m1=3
and n1=3
, dataset 'd3' doesn't have m1=3, n1=3.

d3<-structure(list(m1 = c(2, 3, 2), n1 = c(2, 2, 3), cterm1_P0L = c(0.9025,
0.857375, 0.9025), cterm1_P1L = c(0.64, 0.512, 0.64), cterm1_P0H =
c(0.9025,
0.9025, 0.857375), cterm1_P1H = c(0.64, 0.64, 0.512)), .Names = c("m1",
"n1", "cterm1_P0L", "cterm1_P1L", "cterm1_P0H", "cterm1_P1H"), row.names =
c(NA,
3L), class = "data.frame")
d3

res1<-do.call(rbind,lapply(unique(d3\$m1),function(m1)
do.call(rbind,lapply(unique(d3\$n1),function(n1)
do.call(rbind,lapply(0:(m1-1),function(x1)
do.call(rbind,lapply(0:(n1-1),function(y1)
do.call(rbind,lapply((m1+2):(7-n1),function(m)
do.call(rbind,lapply((n1+2):(9-m),function(n)
do.call(rbind,lapply(x1:(x1+m-m1), function(x)
do.call(rbind,lapply(y1:(y1+n-n1), function(y)
expand.grid(m1,n1,x1,y1,m,n,x,y)) )))))))))))))))
names(res1)<- c("m1","n1","x1","y1","m","n","x","y")
attr(res1,"out.attrs")<-NULL
res1

library(plyr)
res2<- join(res1,d3,by=c("m1","n1"),type="full")
res2

On Sun, Feb 17, 2013 at 11:10 PM, arun kirshna [via R] <
ml-node+s789695n4658895h56 at n4.nabble.com> wrote:

> Hi,
>
>
> "Yes, I wanted to expand directly from d. If there are other variables,
> says "A", "B", "C" that I need to keep  in the final expanded data, how
> to modify the code?"
>
> d<-data.frame()
> for (m1 in 2:3) {
>     for (n1 in 2:2) {
>         for (x1 in 0:(m1-1)) {
>             for (y1 in 0:(n1-1)) {
> d<-rbind(d,c(m1,n1,x1,y1))
> }
> }
> }}
> colnames(d)<-c("m1","n1","x1","y1")
> d
> res1<-do.call(rbind,lapply(unique(d\$m1),function(m1)
> do.call(rbind,lapply(unique(d\$n1),function(n1)
> do.call(rbind,lapply(0:(m1-1),function(x1)
> do.call(rbind,lapply(0:(n1-1),function(y1)
> do.call(rbind,lapply((m1+2):(7-n1),function(m)
> do.call(rbind,lapply((n1+2):(9-m),function(n)
> do.call(rbind,lapply(x1:(x1+m-m1), function(x)
> expand.grid(m1,n1,x1,y1,m,n,x)) )))))))))))))
>  names(res1)<- c("m1","n1","x1","y1","m","n","x")
>
> set.seed(235)
>  d\$A<- sample(1:50,10,replace=TRUE)
>  set.seed(23)
>  d\$B<- sample(1:50,10,replace=TRUE)
>
>  d
>  #  m1 n1 x1 y1  A  B
> #1   2  2  0  0 50 29
> #2   2  2  0  1 40 12
> #3   2  2  1  0 31 17
> #4   2  2  1  1  7 36
> #5   3  2  0  0 13 41
> #6   3  2  0  1 27 22
> #7   3  2  1  0 49 49
> #8   3  2  1  1 47 49
> #9   3  2  2  0 23 43
> #10  3  2  2  1  4 50
> library(plyr)
> res2<- join(res1,d,by=c("m1","n1","x1","y1"),type="full")
> res2
>  #  m1 n1 x1 y1 m n x  A  B
> #1   2  2  0  0 4 4 0 50 29
> #2   2  2  0  0 4 4 1 50 29
> #3   2  2  0  0 4 4 2 50 29
> #4   2  2  0  0 4 5 0 50 29
> #5   2  2  0  0 4 5 1 50 29
> #6   2  2  0  0 4 5 2 50 29
> #7   2  2  0  0 5 4 0 50 29
> #8   2  2  0  0 5 4 1 50 29
> #9   2  2  0  0 5 4 2 50 29
> #10  2  2  0  0 5 4 3 50 29
> #11  2  2  0  1 4 4 0 40 12
> #12  2  2  0  1 4 4 1 40 12
> #13  2  2  0  1 4 4 2 40 12
> #14  2  2  0  1 4 5 0 40 12
> #15  2  2  0  1 4 5 1 40 12
> #16  2  2  0  1 4 5 2 40 12
> #17  2  2  0  1 5 4 0 40 12
> #18  2  2  0  1 5 4 1 40 12
> #19  2  2  0  1 5 4 2 40 12
> #20  2  2  0  1 5 4 3 40 12
> #21  2  2  1  0 4 4 1 31 17
> #22  2  2  1  0 4 4 2 31 17
> #23  2  2  1  0 4 4 3 31 17
> #24  2  2  1  0 4 5 1 31 17
> #25  2  2  1  0 4 5 2 31 17
> #26  2  2  1  0 4 5 3 31 17
> #27  2  2  1  0 5 4 1 31 17
> #28  2  2  1  0 5 4 2 31 17
> #29  2  2  1  0 5 4 3 31 17
> #30  2  2  1  0 5 4 4 31 17
> #31  2  2  1  1 4 4 1  7 36
> #32  2  2  1  1 4 4 2  7 36
> #33  2  2  1  1 4 4 3  7 36
> #34  2  2  1  1 4 5 1  7 36
> #35  2  2  1  1 4 5 2  7 36
> #36  2  2  1  1 4 5 3  7 36
> #37  2  2  1  1 5 4 1  7 36
> #38  2  2  1  1 5 4 2  7 36
> #39  2  2  1  1 5 4 3  7 36
> #40  2  2  1  1 5 4 4  7 36
> #41  3  2  0  0 5 4 0 13 41
> #42  3  2  0  0 5 4 1 13 41
> #43  3  2  0  0 5 4 2 13 41
> #44  3  2  0  1 5 4 0 27 22
> #45  3  2  0  1 5 4 1 27 22
> #46  3  2  0  1 5 4 2 27 22
> #47  3  2  1  0 5 4 1 49 49
> #48  3  2  1  0 5 4 2 49 49
> #49  3  2  1  0 5 4 3 49 49
> #50  3  2  1  1 5 4 1 47 49
> #51  3  2  1  1 5 4 2 47 49
> #52  3  2  1  1 5 4 3 47 49
> #53  3  2  2  0 5 4 2 23 43
> #54  3  2  2  0 5 4 3 23 43
> #55  3  2  2  0 5 4 4 23 43
> #56  3  2  2  1 5 4 2  4 50
> #57  3  2  2  1 5 4 3  4 50
> #58  3  2  2  1 5 4 4  4 50
> A.K.
>
>
>
>
>
>
>
>
> ----- Original Message -----
> From: arun <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658895&i=0>>
>
> To: Joanna Zhang <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658895&i=1>>
>
> Cc: R help <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658895&i=2>>
>
> Sent: Saturday, February 16, 2013 11:49 PM
> Subject: Re: [R] cumulative sum by group and under some criteria
>
>
>
> d2<- data.frame()
> for (m1 in 2:3) {
>     for (n1 in 2:2) {
>         for (x1 in 0:(m1-1)) {
>             for (y1 in 0:(n1-1)) {
>         for (m in (m1+2): (7-n1)){
>                for (n in (n1+2):(9-m)){
>                for (x in x1:(x1+m-m1)){
>  d2<- rbind(d2,c(m1,n1,x1,y1,m,n,x))
>  }}}}}}}
> colnames(d2)<-c("m1","n1","x1","y1","m","n","x")
>
> res<-do.call(rbind,lapply(2:3,function(m1)
> do.call(rbind,lapply(2:2,function(n1)
> do.call(rbind,lapply(0:(m1-1),function(x1)
> do.call(rbind,lapply(0:(n1-1),function(y1)
> do.call(rbind,lapply((m1+2):(7-n1),function(m)
> do.call(rbind,lapply((n1+2):(9-m),function(n)
> do.call(rbind,lapply(x1:(x1+m-m1), function(x)
> expand.grid(m1,n1,x1,y1,m,n,x)) )))))))))))))
> names(res)<- c("m1","n1","x1","y1","m","n","x")
>  attr(res,"out.attrs")<-NULL
>  identical(d2,res)
> #[1] TRUE
> A.K.
>
> ________________________________
> From: Joanna Zhang <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658895&i=3>>
>
> To: arun <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658895&i=4>>
>
>  Sent: Saturday, February 16, 2013 8:46 PM
> Subject: Re: [R] cumulative sum by group and under some criteria
>
>
> Hi,
> What I need is to expand each row by adding several columns and . Let me
> restate the question. I have a dataset d, I want to expand it to d2 showed
> below.
> d<-data.frame()
> for (m1 in 2:3) {
>     for (n1 in 2:2) {
>         for (x1 in 0:(m1-1)) {
>             for (y1 in 0:(n1-1)) {
> d<-rbind(d,c(m1,n1,x1,y1))
> }
> }
> }}
> colnames(d)<-c("m1","n1","x1","y1")
> d
>
>    m1 n1 x1 y1
> 1   2  2  0  0
> 2   2  2  0  1
> 3   2  2  1  0
> 4   2  2  1  1
> 5   3  2  0  0
> 6   3  2  0  1
> 7   3  2  1  0
> 8   3  2  1  1
> 9   3  2  2  0
> 10  3  2  2  1
> I want to expand it as follows:
> for (m in (m1+2): (7-n1){
>     for (n in (n1+2):(9-m){
>         for (x in x1:(x1+m-m1){
> }}}
> so for the first row,
>    m1 n1 x1 y1
> 1   2  2  0  0
> it should be expanded as
>    m1 n1 x1 y1  m  n  x
>     2  2  0  0  4  4  0
>     2  2  0  0  4  4  1
>     2  2  0  0  4  4  2
>     2  2  0  0  4  5  0
>     2  2  0  0  4  5  1
>     2  2  0  0  4  5  2
>
>  On Tue, Feb 12, 2013 at 8:19 PM, arun <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658895&i=5>>
> wrote:
>
> Hi,
>
> >
> >Saw your reply again in Nabble.  I thought I sent you the solution
> previously.
> >
> >
> >res3new<-  aggregate(.~m1+n1,data=res2[,c(1:2,12:13)],max)
> >
> > d2<-res3new[res3new[,3]<0.01 & res3new[,4]<0.01,]
> >
> >
> >m1<- 3 #from d2
> >maxN<- 9
> >n1<- 2 #from d2
> >
> >In the example that you provided:
> > (m1+2):(maxN-(n1+2))
> >#[1] 5
> > (n1+2):(maxN-5)
> >#[1] 4
> >#Suppose
> > x1<- 4
> > y1<- 2
> > x1:(x1+5-m1)
> >#[1] 4 5 6
> > y1:(y1+4-n1)
> >#[1] 2 3 4
> >
> > datnew<-expand.grid(5,4,4:6,2:4)
> > colnames(datnew)<- c("m","n","x","y")
> >datnew<-within(datnew,{p1<- x/m;p2<-y/n})
> >res<-cbind(datnew,d2[rep(1:nrow(d2),nrow(datnew)),])
> > row.names(res)<- 1:nrow(res)
> > res
> >#  m n x y   p2  p1 m1 n1 cterm1_P1L cterm1_P0H
> >#1 5 4 4 2 0.50 0.8  3  2    0.00032     0.0025
> >#2 5 4 5 2 0.50 1.0  3  2    0.00032     0.0025
> >#3 5 4 6 2 0.50 1.2  3  2    0.00032     0.0025
> >#4 5 4 4 3 0.75 0.8  3  2    0.00032     0.0025
> >#5 5 4 5 3 0.75 1.0  3  2    0.00032     0.0025
> >#6 5 4 6 3 0.75 1.2  3  2    0.00032     0.0025
> >#7 5 4 4 4 1.00 0.8  3  2    0.00032     0.0025
> >#8 5 4 5 4 1.00 1.0  3  2    0.00032     0.0025
> >#9 5 4 6 4 1.00 1.2  3  2    0.00032     0.0025
> >
> >A.K.
> >
> >
> >
> >
> >
> >----- Original Message -----
> >From: Zjoanna <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658895&i=6>>
>
> >To: [hidden email] <http://user/SendEmail.jtp?type=node&node=4658895&i=7>
> >Cc:
> >
> >Sent: Sunday, February 10, 2013 6:04 PM
> >Subject: Re: [R] cumulative sum by group and under some criteria
> >
> >
> >Hi,
> >How to expand or loop for one variable n based on another variable? for
> >example, I want to add m (from m1 to maxN- n1-2) and for each m, I want
> to
> >add n (n1+2 to maxN-m), and similarly add x and y, then I need to do some
> >calculations.
> >
> >d3<-data.frame(d2)
> >    for (m in (m1+2):(maxN-(n1+2)){
> >       for (n in (n1+2):(maxN-m)){
> >             for (x in x1:(x1+m-m1)){
> >                  for (y in y1:(y1+n-n1)){
> >                       p1<- x/m
> >                       p2<- y/n
> >}}}}
> >
> >On Thu, Feb 7, 2013 at 12:16 AM, arun kirshna [via R] <
>  >[hidden email] <http://user/SendEmail.jtp?type=node&node=4658895&i=8>>
> wrote:
> >
> >> Hi,
> >>
> >> Anyway, just using some random combinations:
> >>  dnew<- expand.grid(4:10,5:10,6:10,3:7,4:5,6:8)
> >> names(dnew)<-c("m","n","x1","y1","x","y")
> >> resF<- cbind(dnew,d2[rep(1:nrow(d2),nrow(dnew)),])
> >>
> >>  row.names(resF)<- 1:nrow(resF)
> >> #  m n x1 y1 x y m1 n1 cterm1_P1L cterm1_P0H
> >> #1 4 5  6  3 4 6  3  2    0.00032     0.0025
> >> #2 5 5  6  3 4 6  3  2    0.00032     0.0025
> >> #3 6 5  6  3 4 6  3  2    0.00032     0.0025
> >> #4 7 5  6  3 4 6  3  2    0.00032     0.0025
> >> #5 8 5  6  3 4 6  3  2    0.00032     0.0025
> >> #6 9 5  6  3 4 6  3  2    0.00032     0.0025
> >>
> >>  nrow(resF)
> >> #[1] 6300
> >> I am not sure what you want to do with this.
> >> A.K.
> >> ________________________________
> >> From: Joanna Zhang <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=0>>
> >>
> >> To: arun <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=1>>
> >
> >>
> >> Sent: Wednesday, February 6, 2013 10:29 AM
> >> Subject: Re: cumulative sum by group and under some criteria
> >>
> >>
> >> Hi,
> >>
> >> Thanks! I need to do some calculations in the expended data, the
> expended
> >> data would be very large, what is an efficient way, doing calculations
> >> while expending the data, something similiar with the following, or
> >> expending data using the code in your message and then add calculations
> in
> >> the expended data?
> >>
> >> d3<-data.frame(d2)
> >>    for .......{
> >>          for {
> >>               for .... {
> >>                   for .....{
> >>                        p1<- x/m
> >>                        p2<- y/n
> >>                       ..........
> >> }}
> >> }}
> >>
> >> I also modified your code for expending data:
> >> dnew<-expand.grid((m1+2):(maxN-(n1+2)),(n1+2):(maxN-m),0:m1,0:n1,
> >> x1:(x1+m-m1),y1:(y1+n-n1))
> >> names(dnew)<-c("m","n","x1","y1","x","y")
> >> dnew
> >> resF<-cbind(dnew[,c(2,1)],d2[rep(1:nrow(d2),nrow(dnew)),])    # this is
> >> not correct, how to modify it.
> >> resF
> >> row.names(resF)<-1:nrow(resF)
> >> resF
> >>
> >>
> >>
> >>
> >> On Tue, Feb 5, 2013 at 2:46 PM, arun <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=2>>
> >
> >> wrote:
> >>
> >> Hi,
> >>
> >> >
> >> >You can reduce the steps to reach d2:
> >> >res3<-
> >> with(res2,aggregate(cbind(cterm1_P1L,cterm1_P0H),by=list(m1,n1),max))
> >> >
> >> >#Change it to:
> >> >res3new<-  aggregate(.~m1+n1,data=res2[,c(1:2,12:13)],max)
> >> >res3new
> >> > m1 n1 cterm1_P1L cterm1_P0H
> >> >1  2  2    0.01440 0.00273750
> >> >2  3  2    0.00032 0.00250000
> >> >3  2  3    0.01952 0.00048125
> >> >d2<-res3new[res3new[,3]<0.01 & res3new[,4]<0.01,]
> >> >
> >> > dnew<-expand.grid(4:10,5:10)
> >> > names(dnew)<-c("n","m")
> >> >resF<-cbind(dnew[,c(2,1)],d2[rep(1:nrow(d2),nrow(dnew)),])
> >> >
> >> >row.names(resF)<-1:nrow(resF)
> >> >#  m n m1 n1 cterm1_P1L cterm1_P0H
> >> >#1 5 4  3  2    0.00032     0.0025
> >> >#2 5 5  3  2    0.00032     0.0025
> >> >#3 5 6  3  2    0.00032     0.0025
> >> >#4 5 7  3  2    0.00032     0.0025
> >> >#5 5 8  3  2    0.00032     0.0025
> >> >#6 5 9  3  2    0.00032     0.0025
> >> >
> >> >A.K.
> >> >
> >> >________________________________
> >> >From: Joanna Zhang <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=3>>
> >>
> >> >To: arun <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=4>>
> >
> >>
> >> >Sent: Tuesday, February 5, 2013 2:48 PM
> >> >
> >> >Subject: Re: cumulative sum by group and under some criteria
> >> >
> >> >
> >> >  Hi ,
> >> >what I want is :
> >> >m   n    m1    n1 cterm1_P1L   cterm1_P0H
> >> > 5   4    3       2    0.00032         0.00250000
> >> > 5   5    3       2    0.00032         0.00250000
> >> > 5   6    3       2    0.00032         0.00250000
> >> > 5   7    3       2    0.00032         0.00250000
> >> > 5   8   3       2    0.00032         0.00250000
> >> > 5   9   3       2    0.00032         0.00250000
> >> >5   10  3       2    0.00032         0.00250000
> >> >6    4   3       2    0.00032         0.00250000
> >> >6    5   3       2    0.00032         0.00250000
> >> >6    6   3       2    0.00032         0.00250000
> >> >6    7   3       2    0.00032         0.00250000
> >> >.....
> >> >6    10  3       2    0.00032         0.00250000
> >> >
> >> >
> >> >
> >> >On Tue, Feb 5, 2013 at 1:12 PM, arun <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=5>>
> >
> >> wrote:
> >> >
> >> >Hi,
> >> >>
> >> >>Saw your message on Nabble.
> >> >>
> >> >>
> >> >>"I want to add some more columns based on the results. Is the
> following
> >> code good way to create such a data frame and How to see the column m
> and n
> >> in the updated data?
> >> >>
> >> >>d2<- reres3[res3[,3]<0.01 & res3[,4]<0.01,]
> >> >># should be a typo
> >> >>
> >> >>colnames(d2)[1:2]<- c("m1","n1");
> >> >>d2 #already a data.frame
> >> >>
> >> >>d3<-data.frame(d2)
> >> >>   for (m in (m1+2):10){
> >> >>        for (n in (n1+2):10){
> >> >> d3<-rbind(d3, c(d2))}}" #this is not making much sense to me.
> >>  Especially, you mentioned you wanted add more columns.
> >> >>#Running this step gave error
> >> >>
> >> >>Not sure what you want as output.
> >> >>Could you show the ouput that is expected:
> >> >>
> >> >>A.K.
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>________________________________
> >> >>From: Joanna Zhang <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=6>>
> >>
> >> >>To: arun <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=7>>
> >
> >>
> >> >>Sent: Tuesday, February 5, 2013 10:23 AM
> >> >>
> >> >>Subject: Re: cumulative sum by group and under some criteria
> >> >>
> >> >>
> >> >>Hi,
> >> >>
> >> >>Yes, I changed code. You answered the questions. But how can I put
> two
> >> criteria in the code, if both the maximum value of cterm1_p1L <= 0.01
> and
> >> cterm1_p1H <=0.01, the output the m1,n1.
> >> >>
> >> >>
> >> >>
> >> >>
> >>  >>On Tue, Feb 5, 2013 at 8:47 AM, arun <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=8>>
> >
> >> wrote:
> >> >>
> >> >>
> >> >>>
> >> >>> HI,
> >> >>>
> >> >>>
> >> >>>I am not getting the same results as yours:  You must have changed
> the
> >> dataset.
> >> >>> res2[,1:2][res2\$cterm1_P1L<0.6 & res2\$cterm1_P0H<0.95,]
> >> >>>   m1 n1
> >> >>>1   2  2
> >> >>>2   2  2
> >> >>>3   2  2
> >> >>>4   2  2
> >> >>>5   2  2
> >> >>>6   2  2
> >> >>>7   2  2
> >> >>>8   2  2
> >> >>>9   2  2
> >> >>>10  3  2
> >> >>>11  3  2
> >> >>>12  3  2
> >> >>>13  3  2
> >> >>>14  3  2
> >> >>>15  3  2
> >> >>>16  3  2
> >> >>>17  3  2
> >> >>>18  3  2
> >> >>>19  3  2
> >> >>>20  3  2
> >> >>>21  3  2
> >> >>>22  2  3
> >> >>>23  2  3
> >> >>>24  2  3
> >> >>>25  2  3
> >> >>>26  2  3
> >> >>>27  2  3
> >> >>>28  2  3
> >> >>>29  2  3
> >> >>>30  2  3
> >> >>>31  2  3
> >> >>>32  2  3
> >> >>>33  2  3
> >> >>>
> >> >>>
> >> >>>Regarding the maximum value within each block, haven't I answered in
> >> the earlier post.
> >> >>>
> >> >>>aggregate(cterm1_P1L~m1+n1,data=res2,max)
> >> >>>#  m1 n1 cterm1_P1L
> >> >>>#1  2  2    0.01440
> >> >>>#2  3  2    0.00032
> >> >>>#3  2  3    0.01952
> >> >>>
> >> >>>
> >> >>>
> with(res2,aggregate(cbind(cterm1_P1L,cterm1_P0H),by=list(m1,n1),max))
> >> >>>#  Group.1 Group.2 cterm1_P1L cterm1_P0H
> >> >>>#1       2       2    0.01440 0.00273750
> >> >>>#2       3       2    0.00032 0.00250000
> >> >>>#3       2       3    0.01952 0.00048125
> >> >>>
> >> >>>
> >> >>>A.K.
> >> >>>
> >> >>>
> >> >>>----- Original Message -----
> >
> >> >>>From: "[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=9>";
> >> <[hidden email] <http://user/SendEmail.jtp?type=node&node=4657773&i=10>>
>
> >> >>>To: [hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=11>
> >>  >>>Cc:
> >> >>>
> >> >>>Sent: Tuesday, February 5, 2013 9:33 AM
> >> >>>Subject: Re: cumulative sum by group and under some criteria
> >> >>>
> >> >>>Hi,
> >> >>>If use this
> >> >>>
> >> >>>res2[,1:2][res2\$cterm1_P1L<0.6 & res2\$cterm1_P0H<0.95,]
> >> >>>
> >> >>>the results are the following, but actually only m1=3, n1=2 sastify
> the
> >> criteria, as I need to look at the row with maximum value within each
> >> block,not every row.
> >> >>>
> >> >>>
> >> >>>   m1 n1
> >> >>>1   2  2
> >> >>>10  3  2
> >> >>>11  3  2
> >> >>>12  3  2
> >> >>>13  3  2
> >> >>>14  3  2
> >> >>>15  3  2
> >> >>>16  3  2
> >> >>>17  3  2
> >> >>>18  3  2
> >> >>>19  3  2
> >> >>>20  3  2
> >> >>>21  3  2
> >> >>>22  2  3
> >> >>>23  2  3
> >> >>>
> >> >>>
> >> >>><quote author='arun kirshna'>
> >> >>>
> >> >>>
> >> >>>
> >> >>>Hi,
> >> >>>Thanks. This extract every row that satisfy the condition, but I
> need
> >> look
> >> >>>at the last row (the maximum of cumulative sum) for each block
> (m1,n1).
> >> for
> >> >>>example, if I set the criteria
> >> >>>
> >> >>>res2\$cterm1_P1L<0.6 & res2\$cterm1_P0H<0.95, this should extract m1=
> 3,
> >> n1 =
> >> >>>2.
> >> >>>
> >> >>>
> >> >>>Hi,
> >> >>>I am not sure I understand your question.
> >> >>>res2\$cterm1_P1L<0.6 & res2\$cterm1_P0H<0.95
> >> >>> #[1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
> TRUE
> >> TRUE
> >> >>>TRUE
> >> >>>#[16] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
> TRUE
> >> TRUE
> >> >>>TRUE
> >> >>>#[31] TRUE TRUE TRUE
> >> >>>
> >> >>>This will extract all the rows.
> >> >>>
> >> >>>
> >> >>>res2[,1:2][res2\$cterm1_P1L<0.01 & res2\$cterm1_P1L!=0,]
> >> >>>#   m1 n1
> >> >>>#21  3  2
> >> >>>This extract only the row you wanted.
> >> >>>
> >> >>>For the different groups:
> >> >>>
> >> >>>aggregate(cterm1_P1L~m1+n1,data=res2,max)
> >> >>>#  m1 n1 cterm1_P1L
> >> >>>#1  2  2    0.01440
> >> >>>#2  3  2    0.00032
> >> >>>#3  2  3    0.01952
> >> >>>
> >> >>> aggregate(cterm1_P1L~m1+n1,data=res2,function(x) max(x)<0.01)
> >> >>> # m1 n1 cterm1_P1L
> >> >>>#1  2  2      FALSE
> >> >>>#2  3  2       TRUE
> >> >>>#3  2  3      FALSE
> >> >>>
> >> >>>res4<-aggregate(cterm1_P1L~m1+n1,data=res2,function(x) max(x)<0.01)
> >> >>>res4[,1:2][res4[,3],]
> >> >>>#  m1 n1
> >> >>>#2  3  2
> >> >>>
> >> >>>A.K.
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>----- Original Message -----
> >
> >> >>>From: "[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=12>";
> >> <[hidden email] <http://user/SendEmail.jtp?type=node&node=4657773&i=13>>
>
> >> >>>To: [hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=14>
> >>  >>>Cc:
> >> >>>Sent: Sunday, February 3, 2013 3:58 PM
> >> >>>Subject: Re: cumulative sum by group and under some criteria
> >> >>>
> >> >>>Hi,
> >> >>>Let me restate my questions. I need to get the m1 and n1 that
> satisfy
> >> some
> >> >>>criteria, for example in this case, within each group, the maximum
> >> >>>cterm1_p1L ( the last row in this group) <0.01. I need to extract
> m1=3,
> >> >>>n1=2, I only need m1, n1 in the row.
> >> >>>
> >> >>>Also, how to create the structure from the data.frame, I am new to
> R, I
> >> need
> >> >>>to change the maxN and run the loop to different data.
> >> >>>Thanks very much for your help!
> >> >>>
> >> >>><quote author='arun kirshna'>
> >> >>>HI,
> >> >>>
> >> >>>I think this should be more correct:
> >> >>>maxN<-9
> >> >>>c11<-0.2
> >> >>>c12<-0.2
> >> >>>p0L<-0.05
> >> >>>p0H<-0.05
> >> >>>p1L<-0.20
> >> >>>p1H<-0.20
> >> >>>
> >> >>>d <- structure(list(m1 = c(2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
> >> >>>2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3),
> >> >>>    n1 = c(2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
> >> >>>    3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2), x1 = c(0,
> >> >>>    0, 0, 1, 1, 1, 2, 2, 2, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2,
> >> >>>    2, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3), y1 = c(0, 1, 2, 0,
> >> >>>    1, 2, 0, 1, 2, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1,
> >> >>>    2, 0, 1, 2, 0, 1, 2, 0, 1, 2), Fmm = c(0, 0, 0, 0.7, 0.59,
> >> >>>    0.64, 1, 1, 1, 0, 0, 0, 0, 0.63, 0.7, 0.74, 0.68, 1, 1, 1,
> >> >>>    1, 0, 0, 0, 0.62, 0.63, 0.6, 0.63, 0.6, 0.68, 1, 1, 1), Fnn =
> c(0,
> >> >>>    0.64, 1, 0, 0.51, 1, 0, 0.67, 1, 0, 0.62, 0.69, 1, 0, 0.54,
> >> >>>    0.62, 1, 0, 0.63, 0.73, 1, 0, 0.63, 1, 0, 0.7, 1, 0, 0.7,
> >> >>>    1, 0, 0.58, 1), Qm = c(1, 1, 1, 0.65, 0.45, 0.36, 0.5, 0.165,
> >> >>>    0, 1, 1, 1, 1, 0.685, 0.38, 0.32, 0.32, 0.5, 0.185, 0.135,
> >> >>>    0, 1, 1, 1, 0.69, 0.37, 0.4, 0.685, 0.4, 0.32, 0.5, 0.21,
> >> >>>    0), Qn = c(1, 0.36, 0, 0.65, 0.45, 0, 0.5, 0.165, 0, 1, 0.38,
> >> >>>    0.31, 0, 0.685, 0.38, 0.32, 0, 0.5, 0.185, 0.135, 0, 1, 0.37,
> >> >>>    0, 0.69, 0.3, 0, 0.685, 0.3, 0, 0.5, 0.21, 0), term1_p0 =
> >> c(0.81450625,
> >> >>>    0.0857375, 0.00225625, 0.0857375, 0.009025, 0.0002375,
> 0.00225625,
> >> >>>    0.0002375, 6.25e-06, 0.7737809375, 0.1221759375,
> >> 0.00643031249999999,
> >> >>>    0.0001128125, 0.081450625, 0.012860625, 0.000676875, 1.1875e-05,
> >> >>>    0.0021434375, 0.0003384375, 1.78125e-05, 3.125e-07,
> 0.7737809375,
> >> >>>    0.081450625, 0.0021434375, 0.1221759375, 0.012860625,
> >> 0.0003384375,
> >> >>>    0.00643031249999999, 0.000676875, 1.78125e-05, 0.0001128125,
> >> >>>    1.1875e-05, 3.125e-07), term1_p1 = c(0.4096, 0.2048, 0.0256,
> >> >>>    0.2048, 0.1024, 0.0128, 0.0256, 0.0128, 0.0016, 0.32768,
> >> >>>    0.24576, 0.06144, 0.00512, 0.16384, 0.12288, 0.03072, 0.00256,
> >> >>>    0.02048, 0.01536, 0.00384, 0.00032, 0.32768, 0.16384, 0.02048,
> >> >>>    0.24576, 0.12288, 0.01536, 0.06144, 0.03072, 0.00384, 0.00512,
> >> >>>    0.00256, 0.00032)), .Names = c("m1", "n1", "x1", "y1", "Fmm",
> >> >>>"Fnn", "Qm", "Qn", "term1_p0", "term1_p1"), row.names = c(NA,
> >> >>>33L), class = "data.frame")
> >> >>>
> >> >>>library(zoo)
> >> >>>lst1<- split(d,list(d\$m1,d\$n1))
> >> >>>res2<-do.call(rbind,lapply(lst1[lapply(lst1,nrow)!=0],function(x){
> >> >>>x[,11:14]<-NA;
> >> >>>x[,11:12][x\$Qm<=c11,]<-cumsum(x[,9:10][x\$Qm<=c11,]);
> >> >>>x[,13:14][x\$Qn<=c12,]<-cumsum(x[,9:10][x\$Qn<=c12,]);
> >> >>>colnames(x)[11:14]<-
> >> c("cterm1_P0L","cterm1_P1L","cterm1_P0H","cterm1_P1H");
> >> >>>x1<-na.locf(x);
> >> >>>x1[,11:14][is.na(x1[,11:14])]<-0;
> >> >>>x1}))
> >> >>>row.names(res2)<- 1:nrow(res2)
> >> >>>
> >> >>> res2
> >> >>> #  m1 n1 x1 y1  Fmm  Fnn    Qm    Qn     term1_p0 term1_p1
> >> cterm1_P0L
> >> >>>cterm1_P1L   cterm1_P0H cterm1_P1H
> >> >>>
> >> >>>#1   2  2  0  0 0.00 0.00 1.000 1.000 0.8145062500  0.40960
> >> 0.0000000000
> >> >>> 0.00000 0.0000000000    0.00000
> >> >>>#2   2  2  0  1 0.00 0.64 1.000 0.360 0.0857375000  0.20480
> >> 0.0000000000
> >> >>> 0.00000 0.0000000000    0.00000
> >> >>>#3   2  2  0  2 0.00 1.00 1.000 0.000 0.0022562500  0.02560
> >> 0.0000000000
> >> >>> 0.00000 0.0022562500    0.02560
> >> >>>#4   2  2  1  0 0.70 0.00 0.650 0.650 0.0857375000  0.20480
> >> 0.0000000000
> >> >>> 0.00000 0.0022562500    0.02560
> >> >>>#5   2  2  1  1 0.59 0.51 0.450 0.450 0.0090250000  0.10240
> >> 0.0000000000
> >> >>> 0.00000 0.0022562500    0.02560
> >> >>>#6   2  2  1  2 0.64 1.00 0.360 0.000 0.0002375000  0.01280
> >> 0.0000000000
> >> >>> 0.00000 0.0024937500    0.03840
> >> >>>#7   2  2  2  0 1.00 0.00 0.500 0.500 0.0022562500  0.02560
> >> 0.0000000000
> >> >>> 0.00000 0.0024937500    0.03840
> >> >>>#8   2  2  2  1 1.00 0.67 0.165 0.165 0.0002375000  0.01280
> >> 0.0002375000
> >> >>> 0.01280 0.0027312500    0.05120
> >> >>>#9   2  2  2  2 1.00 1.00 0.000 0.000 0.0000062500  0.00160
> >> 0.0002437500
> >> >>> 0.01440 0.0027375000    0.05280
> >> >>>#10  3  2  0  0 0.00 0.00 1.000 1.000 0.7737809375  0.32768
> >> 0.0000000000
> >> >>> 0.00000 0.0000000000    0.00000
> >> >>>#11  3  2  0  1 0.00 0.63 1.000 0.370 0.0814506250  0.16384
> >> 0.0000000000
> >> >>> 0.00000 0.0000000000    0.00000
> >> >>>#12  3  2  0  2 0.00 1.00 1.000 0.000 0.0021434375  0.02048
> >> 0.0000000000
> >> >>> 0.00000 0.0021434375    0.02048
> >> >>>#13  3  2  1  0 0.62 0.00 0.690 0.690 0.1221759375  0.24576
> >> 0.0000000000
> >> >>> 0.00000 0.0021434375    0.02048
> >> >>>#14  3  2  1  1 0.63 0.70 0.370 0.300 0.0128606250  0.12288
> >> 0.0000000000
> >> >>> 0.00000 0.0021434375    0.02048
> >> >>>#15  3  2  1  2 0.60 1.00 0.400 0.000 0.0003384375  0.01536
> >> 0.0000000000
> >> >>> 0.00000 0.0024818750    0.03584
> >> >>>#16  3  2  2  0 0.63 0.00 0.685 0.685 0.0064303125  0.06144
> >> 0.0000000000
> >> >>> 0.00000 0.0024818750    0.03584
> >> >>>#17  3  2  2  1 0.60 0.70 0.400 0.300 0.0006768750  0.03072
> >> 0.0000000000
> >> >>> 0.00000 0.0024818750    0.03584
> >> >>>#18  3  2  2  2 0.68 1.00 0.320 0.000 0.0000178125  0.00384
> >> 0.0000000000
> >> >>> 0.00000 0.0024996875    0.03968
> >> >>>#19  3  2  3  0 1.00 0.00 0.500 0.500 0.0001128125  0.00512
> >> 0.0000000000
> >> >>> 0.00000 0.0024996875    0.03968
> >> >>>#20  3  2  3  1 1.00 0.58 0.210 0.210 0.0000118750  0.00256
> >> 0.0000000000
> >> >>> 0.00000 0.0024996875    0.03968
> >> >>>#21  3  2  3  2 1.00 1.00 0.000 0.000 0.0000003125  0.00032
> >> 0.0000003125
> >> >>> 0.00032 0.0025000000    0.04000
> >> >>>#22  2  3  0  0 0.00 0.00 1.000 1.000 0.7737809375  0.32768
> >> 0.0000000000
> >> >>> 0.00000 0.0000000000    0.00000
> >> >>>#23  2  3  0  1 0.00 0.62 1.000 0.380 0.1221759375  0.24576
> >> 0.0000000000
> >> >>> 0.00000 0.0000000000    0.00000
> >> >>>#24  2  3  0  2 0.00 0.69 1.000 0.310 0.0064303125  0.06144
> >> 0.0000000000
> >> >>> 0.00000 0.0000000000    0.00000
> >> >>>#25  2  3  0  3 0.00 1.00 1.000 0.000 0.0001128125  0.00512
> >> 0.0000000000
> >> >>> 0.00000 0.0001128125    0.00512
> >> >>>#26  2  3  1  0 0.63 0.00 0.685 0.685 0.0814506250  0.16384
> >> 0.0000000000
> >> >>> 0.00000 0.0001128125    0.00512
> >> >>>#27  2  3  1  1 0.70 0.54 0.380 0.380 0.0128606250  0.12288
> >> 0.0000000000
> >> >>> 0.00000 0.0001128125    0.00512
> >> >>>#28  2  3  1  2 0.74 0.62 0.320 0.320 0.0006768750  0.03072
> >> 0.0000000000
> >> >>> 0.00000 0.0001128125    0.00512
> >> >>>#29  2  3  1  3 0.68 1.00 0.320 0.000 0.0000118750  0.00256
> >> 0.0000000000
> >> >>> 0.00000 0.0001246875    0.00768
> >> >>>#30  2  3  2  0 1.00 0.00 0.500 0.500 0.0021434375  0.02048
> >> 0.0000000000
> >> >>> 0.00000 0.0001246875    0.00768
> >> >>>#31  2  3  2  1 1.00 0.63 0.185 0.185 0.0003384375  0.01536
> >> 0.0003384375
> >> >>> 0.01536 0.0004631250    0.02304
> >> >>>#32  2  3  2  2 1.00 0.73 0.135 0.135 0.0000178125  0.00384
> >> 0.0003562500
> >> >>> 0.01920 0.0004809375    0.02688
> >> >>>#33  2  3  2  3 1.00 1.00 0.000 0.000 0.0000003125  0.00032
> >> 0.0003565625
> >> >>> 0.01952 0.0004812500    0.02720
> >> >>>
> >> >>>#Sorry, some values in my previous solution didn't look right. I
> >> didn't
> >> >>>A.K.
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>----- Original Message -----
> >> >>>From: Zjoanna <[hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=15>>
> >>
> >> >>>To: [hidden email]<
> http://user/SendEmail.jtp?type=node&node=4657773&i=16>
> >
> >> >>>Cc:
> >> >>>Sent: Friday, February 1, 2013 12:19 PM
> >> >>>Subject: Re: [R] cumulative sum by group and under some criteria
> >> >>>
> >> example.
> >> >>>I modified a little to fit my real data, I got an error massage.
> >> >>>
> >> >>>Error in split.default(x = seq_len(nrow(x)), f = f, drop = drop,
> ...) :
> >> >>>  Group length is 0 but data length > 0
> >> >>>
> >> >>>
> >> >>>On Thu, Jan 31, 2013 at 12:21 PM, arun kirshna [via R] <
> >>  >>>[hidden email] <
> http://user/SendEmail.jtp?type=node&node=4657773&i=17>>
> >
> >> wrote:
> >> >>>
> >> >>>> Hi,
> >> >>>> Try this:
> >> >>>> colnames(d)<-c("m1","n1","x1","y1","p11","p12")
> >> >>>> library(zoo)
> >> >>>> res1<-
> >> do.call(rbind,lapply(lapply(split(d,list(d\$m1,d\$n1)),function(x)
> >> >>>> {x\$cp11[x\$x1>1]<- cumsum(x\$p11[x\$x1>1]);x\$cp12[x\$y1>1]<-
> >> >>>> cumsum(x\$p12[x\$y1>1]);x}),function(x)
> >> >>>> {x\$cp11<-na.locf(x\$cp11,na.rm=F);x\$cp12<-
> >> na.locf(x\$cp12,na.rm=F);x}))
> >> >>>> #there would be a warning here as one of the list element is NULL.
> >> The,
> >> >>>> warning is okay
> >> >>>> row.names(res1)<- 1:nrow(res1)
> >> >>>> res1[,7:8][is.na(res1[,7:8])]<- 0
> >> >>>> res1
> >> >>>>  #  m1 n1 x1 y1  p11  p12 cp11 cp12
> >> >>>> #1   2  2  0  0 0.00 0.00 0.00 0.00
> >> >>>> #2   2  2  0  1 0.00 0.50 0.00 0.00
> >> >>>> #3   2  2  0  2 0.00 1.00 0.00 1.00
> >> >>>> #4   2  2  1  0 0.50 0.00 0.00 1.00
> >> >>>> #5   2  2  1  1 0.50 0.50 0.00 1.00
> >> >>>> #6   2  2  1  2 0.50 1.00 0.00 2.00
> >> >>>> #7   2  2  2  0 1.00 0.00 1.00 2.00
> >> >>>> #8   2  2  2  1 1.00 0.50 2.00 2.00
> >> >>>> #9   2  2  2  2 1.00 1.00 3.00 3.00
> >> >>>> #10  3  2  0  0 0.00 0.00 0.00 0.00
> >> >>>> #11  3  2  0  1 0.00 0.50 0.00 0.00
> >> >>>> #12  3  2  0  2 0.00 1.00 0.00 1.00
> >> >>>> #13  3  2  1  0 0.33 0.00 0.00 1.00
> >> >>>> #14  3  2  1  1 0.33 0.50 0.00 1.00
> >> >>>> #15  3  2  1  2 0.33 1.00 0.00 2.00
> >> >>>> #16  3  2  2  0 0.67 0.00 0.67 2.00
> >> >>>> #17  3  2  2  1 0.67 0.50 1.34 2.00
> >> >>>> #18  3  2  2  2 0.67 1.00 2.01 3.00
> >> >>>> #19  3  2  3  0 1.00 0.00 3.01 3.00
> >> >>>> #20  3  2  3  1 1.00 0.50 4.01 3.00
> >> >>>> #21  3  2  3  2 1.00 1.00 5.01 4.00
> >> >>>> #22  2  3  0  0 0.00 0.00 0.00 0.00
> >> >>>> #23  2  3  0  1 0.00 0.33 0.00 0.00
> >> >>>> #24  2  3  0  2 0.00 0.67 0.00 0.67
> >> >>>> #25  2  3  0  3 0.00 1.00 0.00 1.67
> >> >>>> #26  2  3  1  0 0.50 0.00 0.00 1.67
> >> >>>> #27  2  3  1  1 0.50 0.33 0.00 1.67
> >> >>>> #28  2  3  1  2 0.50 0.67 0.00 2.34
> >> >>>> #29  2  3  1  3 0.50 1.00 0.00 3.34
> >> >>>> #30  2  3  2  0 1.00 0.00 1.00 3.34
> >> >>>> #31  2  3  2  1 1.00 0.33 2.00 3.34
> >> >>>> #32  2  3  2  2 1.00 0.67 3.00 4.01
> >> >>>> #33  2  3  2  3 1.00 1.00 4.00 5.01
> >> >>>> A.K.
> >> >>>>
> >> >>>> ------------------------------
> >> discussion
> >> >>>> below:
> >> >>>>
> >> >>>>
> >>
> http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4657196.html
> >> >>>> To unsubscribe from cumulative sum by group and under some
> criteria,
> >> click
> >> >>>> here<
> >>
> >> >>>> .
> >> >>>> NAML<
> >>
>
> >>
> >> >>>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> >>>--
> >> >>>View this message in context:
> >> >>>
> >>
> http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4657315.html
> >> >>>Sent from the R help mailing list archive at Nabble.com.
> >> >>>    [[alternative HTML version deleted]]
> >> >>>
> >> >>>______________________________________________
> >> >>>[hidden email] <
> http://user/SendEmail.jtp?type=node&node=4657773&i=18>mailing list
> >
> >> >>>https://stat.ethz.ch/mailman/listinfo/r-help
> >> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
> <http://www.r-project.org/posting-guide.html>
> >
> >> >>>and provide commented, minimal, self-contained, reproducible code.
> >> >>>
> >> >>>
> >> >>>______________________________________________
> >> >>>[hidden email] <
> http://user/SendEmail.jtp?type=node&node=4657773&i=19>mailing list
> >
> >> >>>https://stat.ethz.ch/mailman/listinfo/r-help
> >> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
> <http://www.r-project.org/posting-guide.html>
> >
> >> >>>and provide commented, minimal, self-contained, reproducible code.
> >> >>>
> >> >>></quote>
> >> >>>Quoted from:
> >> >>>
> >>
> http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4657360.html
> >> >>>
> >> >>>
> >> >>>______________________________________________
> >> >>>[hidden email] <
> http://user/SendEmail.jtp?type=node&node=4657773&i=20>mailing list
> >
> >> >>>https://stat.ethz.ch/mailman/listinfo/r-help
> >> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
> <http://www.r-project.org/posting-guide.html>
> >
> >> >>>and provide commented, minimal, self-contained, reproducible code.
> >> >>>
> >> >>></quote>
> >> >>>Quoted from:
> >> >>>
> >>
> http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4657582.html
> >> >>>
> >> >>>
> >> >>
> >> >
> >>
> >> ______________________________________________
> >> [hidden email] <http://user/SendEmail.jtp?type=node&node=4657773&i=21>mailing
> list
> >
> >> https://stat.ethz.ch/mailman/listinfo/r-help
> >> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
> <http://www.r-project.org/posting-guide.html>
> >
> >> and provide commented, minimal, self-contained, reproducible code.
> >>
> >>
> >
> >> ------------------------------
> >> discussion below:
> >>
> >
> >>
> http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4657773.html
> >> To unsubscribe from cumulative sum by group and under some criteria,
> click
> >> here<
>
> >
> >> .
> >> NAML<
>
> >>
> >
> >
> >
> >
> >--
> >View this message in context:
> http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4658133.html
> >
> >Sent from the R help mailing list archive at Nabble.com.
> >    [[alternative HTML version deleted]]
> >
> >______________________________________________
> >[hidden email] <http://user/SendEmail.jtp?type=node&node=4658895&i=9>mailing list
> >
> >https://stat.ethz.ch/mailman/listinfo/r-help
> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
> >and provide commented, minimal, self-contained, reproducible code.
> >
> >
>
>
> ______________________________________________
> [hidden email] <http://user/SendEmail.jtp?type=node&node=4658895&i=10>mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
> and provide commented, minimal, self-contained, reproducible code.
>
>
> ------------------------------
> below:
>
> http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4658895.html
>  To unsubscribe from cumulative sum by group and under some criteria, click
> here<http://r.789695.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=4657074&code=WmpvYW5uYTIwMTNAZ21haWwuY29tfDQ2NTcwNzR8LTE3NTE1MDA0MzY=>
> .
>

--
View this message in context: http://r.789695.n4.nabble.com/cumulative-sum-by-group-and-under-some-criteria-tp4657074p4659018.html
Sent from the R help mailing list archive at Nabble.com.
[[alternative HTML version deleted]]

______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help