I would use source > x<- "2,5-7,10,12-15" > source(textConnection(paste("c(", gsub("\\-", ":", x), ")")))$value [1] 2 5 6 7 10 12 13 14 15
On Wed, Aug 14, 2013 at 8:10 PM, Bert Gunter <gunter.ber...@gene.com> wrote: > Neither gsubfn nor eval(parse)) is required, of course: > > > x<- "2,5-7,10,12-15" > > z <-strsplit(scan(text=x,sep=",",wh="a"),split="-") ## use scan to > vectorize the string > > l <- lapply(z,as.numeric) > > unlist(lapply(l,function(x){ > last <- x[length(x)] ## alternately could use if() on the length of x > seq(from=x[1],to=last) > })) > > [1] 2 5 6 7 10 12 13 14 15 > > > Cheers, > Bert > > > On Wed, Aug 14, 2013 at 3:34 PM, arun <smartpink...@yahoo.com> wrote: > > Hi, > > May be this helps: > > library(gsubfn) > > as.numeric(strsplit(gsub("[c() ]","",gsubfn("([0-9]+)-([0-9]+)", > ~as.numeric(seq(x,y)),x)),",")[[1]]) > > #[1] 2 5 6 7 10 12 13 14 15 > > A.K. > > > > > > > > ----- Original Message ----- > > From: Chris Stubben <stub...@lanl.gov> > > To: r-help@r-project.org > > Cc: > > Sent: Wednesday, August 14, 2013 1:41 PM > > Subject: [R] convert delimited strings with ranges to numeric > > > > Is there an easy way to convert character strings with comma-separated > > numbers and ranges to a numeric vector? > > > > x<- "2,5-7,10,12-15" > > > > [1] 2 5 6 7 10 12 13 14 15 > > > > Thanks, > > Chris > > > > > > -- > > > > Chris Stubben > > > > Los Alamos National Lab > > Bioscience Division > > MS M888 > > Los Alamos, NM 87545 > > > > ______________________________________________ > > 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. > > > > -- > > Bert Gunter > Genentech Nonclinical Biostatistics > > Internal Contact Info: > Phone: 467-7374 > Website: > > http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm > > ______________________________________________ > 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. > [[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.