[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