[R] Re gular Expression help
Wacek Kusnierczyk
Waclaw.Marcin.Kusnierczyk at idi.ntnu.no
Sat Nov 8 00:46:06 CET 2008
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
More information about the R-help
mailing list