Wacek Kusnierczyk wrote: > >> >> >>> Rajasekaramya wrote: >>> >>> >>> >>>> hi there >>>> >>>> I have a vector with a set of data.I just wanna seperate them based on the >>>> first p and q values metioned within the data. >>>> >>>> [1] chr10p15.3 /// chr3q29 /// chr4q35 /// chr9q34.3 >>>> [2] chr1q22-q24 >>>> [3] chr1q22-q24 >>>> [4] chr1pter-q24 >>>> [5] chr1pter-q24 >>>> [6] chr1pter-q24 >>>> >>>> i used a regular expression [+q*] to match up the values but it matches q >>>> found anywhere i know i have written like that but i jus want it to match >>>> the first p or q values. >>>> >>>> my result should be for q and >>>> [2] chr1q22-q24 >>>> [3] chr1q22-q24 >>>> >>>> for p >>>> [1] chr10p15.3 /// chr3q29 /// chr4q35 /// chr9q34.3 >>>> [4] chr1pter-q24 >>>> [5] chr1pter-q24 >>>> [6] chr1pter-q24 >>>> >>>> >>>> >> the following will do the whole job (assuming x is your vector): >> >> >> > result = local({ > p = grep("^[^pq]*p", d) > list(p=d[p], q=d[-p]) > }) >
oops, replace 'd' with 'x' vQ ______________________________________________ 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.