[R] Splitting a character vector.

Rui Barradas ruipbarradas at sapo.pt
Sun Jul 8 00:12:46 CEST 2012


Oh, right!

The close parenthesis isn't doing nothing in the result, t could be done 
after but since we're to it...

Rui Barradas

Em 07-07-2012 23:10, Mark Leeds escreveu:
> Hi Rui: I think he's asking about your replacement with blanks.
>
>
> On Sat, Jul 7, 2012 at 6:08 PM, Rui Barradas <ruipbarradas at sapo.pt
> <mailto:ruipbarradas at sapo.pt>> wrote:
>
>     Hello,
>
>     Sorry, but I don't understand, you're asking about 4 single quotes,
>     the double quotes in open.par are just opening and closing the
>     pattern, a character string.
>
>     Rui Barradas
>
>     Em 07-07-2012 23:03, John Kane escreveu:
>
>         Thanks Rui
>         It works perfectly so far on the test and real data.
>
>         The annoying thing is that I had tried , or thought I'd tried
>         the open.par format and keep getting an error.
>
>            It looks like I had failed to add the '''',  in the term.
>         What is it doing?
>
>
>
>         John Kane
>         Kingston ON Canada
>
>
>             -----Original Message-----
>             From: ruipbarradas at sapo.pt <mailto:ruipbarradas at sapo.pt>
>             Sent: Sat, 07 Jul 2012 22:55:41 +0100
>             To: jrkrideau at inbox.com <mailto:jrkrideau at inbox.com>
>             Subject: Re: [R] Splitting a character vector.
>
>             Hello,
>
>             Try the following.
>
>             open.par <- " \\("  # with a blank before '('
>             close.par <- "\\)"
>             result <- strsplit(sub(close.par, "", dd1), open.par)
>
>
>             Why the two '\\'? Because '(' is a meta-character so it must
>             be escaped.
>             But '\' is a meta character so it must also be escaped.
>
>             Then choose the right way to separate the two, maybe
>             something like
>
>             ix <- rep(c(TRUE, FALSE), length(result))
>             unlist(result)[ix]
>             unlist(result)[!ix]
>
>
>             Hope this helps,
>
>             Rui Barradas
>
>             Em 07-07-2012 22:37, John Kane escreveu:
>
>                 I am lousy at simple regex and I have not found a
>                 solution to a simple
>                 problem.
>
>                 I have a vector with some character values that I want
>                 to split.
>                 Sample data
>                 dd1  <-  c( "XXY (mat harry)","XXY (jim bob)", "CAMP
>                 (joe blow)", "ALP
>                 (max jack)")
>
>                 Desired result
>                 dd2  <-  data.frame( xx = c("XXY", "XXY", "CAMP",
>                 "ALP"), yy = c("mat
>                 harry", "jim bob" , "joe blow", "max jack"))
>
>                 I thought I should be able to split the characters with
>                 strsplit but
>                 either I am misunderstanding the function or don't know
>                 how to escape a
>                 "(" properly in an effort to at least get   "XXY" "(mat
>                 harry)"
>
>                 Any pointers would be appreciated
>                 Thanks
>                 John Kane
>                 Kingston ON Canada
>
>                 ______________________________________________________________
>                 FREE 3D MARINE AQUARIUM SCREENSAVER - Watch dolphins,
>                 sharks & orcas on
>                 your desktop!
>
>                 ________________________________________________
>                 R-help at r-project.org <mailto:R-help at r-project.org>
>                 mailing list
>                 https://stat.ethz.ch/mailman/__listinfo/r-help
>                 <https://stat.ethz.ch/mailman/listinfo/r-help>
>                 PLEASE do read the posting guide
>                 http://www.R-project.org/__posting-guide.html
>                 <http://www.R-project.org/posting-guide.html>
>                 and provide commented, minimal, self-contained,
>                 reproducible code.
>
>
>         ______________________________________________________________
>         FREE 3D MARINE AQUARIUM SCREENSAVER - Watch dolphins, sharks &
>         orcas on your desktop!
>         Check it out at http://www.inbox.com/__marineaquarium
>         <http://www.inbox.com/marineaquarium>
>
>
>
>     ________________________________________________
>     R-help at r-project.org <mailto:R-help at r-project.org> mailing list
>     https://stat.ethz.ch/mailman/__listinfo/r-help
>     <https://stat.ethz.ch/mailman/listinfo/r-help>
>     PLEASE do read the posting guide
>     http://www.R-project.org/__posting-guide.html
>     <http://www.R-project.org/posting-guide.html>
>     and provide commented, minimal, self-contained, reproducible code.
>
>



More information about the R-help mailing list