#or indx<- c(0,cumsum(diff(test)!=1)) aggregate(test,list(indx),function(x) c(min(x),max(x)))[,-1] # [,1] [,2] #[1,] 1 5 #[2,] 22 29 #[3,] 33 40
#or dat1<- data.frame(test,indx) library(plyr) ddply(dat1,.(indx),summarize, Min=min(test),Max=max(test))[,-1] # Min Max #1 1 5 #2 22 29 #3 33 40 A.K. ----- Original Message ----- From: arun <smartpink...@yahoo.com> To: Lizzy Wilbanks <egwilba...@ucdavis.edu> Cc: R help <r-help@r-project.org> Sent: Tuesday, May 14, 2013 12:11 AM Subject: Re: [R] Boundaries of consecutive integers May be: matrix(c(test[c(TRUE,diff(test)>1)],test[c(which(diff(test)>1),length(test))]),ncol=2) # [,1] [,2] #[1,] 1 5 #[2,] 22 29 #[3,] 33 40 A.K. ----- Original Message ----- From: Lizzy Wilbanks <egwilba...@ucdavis.edu> To: r-help@r-project.org Cc: Sent: Monday, May 13, 2013 9:18 PM Subject: [R] Boundaries of consecutive integers Hi folks, I'm trying to accomplish something that seems like it should be straightforward, but I've gotten tied in knots trying to figure it out. A toy example of my issue is below. I've played with diff and can't seem to figure out a systematic solution that will give me the two column output independent of the number of breakpoints in the vector... test<-c(1:5, 22:29,33:40) example.output<-matrix(c(1,5,22,29,33,40),nrow=3,ncol=2,byrow=TRUE) Any ideas? Thanks! Lizzy -- "The obvious goal of any bacterium is to become bacteria." Lizzy Wilbanks Graduate Student, Eisen and Facciotti Labs UC Davis, Microbiology Graduate Group ______________________________________________ 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. ______________________________________________ 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.