[R] Regular Expression

arun smartpink111 at yahoo.com
Tue Jul 24 19:55:29 CEST 2012


Hi,


Try this:

dat1$MONTH<- gsub("^[0-9]+\\-","",dat1$MONTH)
[1] "07" "07" "01"
dat1$QUARTER<- gsub("^[0-9]+\\-","",dat1$QUARTER)
[1] "3" "3" "1"
dat1
  MONTH QUARTER YEAR
1    07       3 2012
2    07       3 2001
3    01       1 2002

A.K.



----- Original Message -----
From: Fred G <bayespokerguy at gmail.com>
To: r-help at r-project.org
Cc: 
Sent: Tuesday, July 24, 2012 1:36 PM
Subject: [R] Regular Expression

Hi--

I have three columns in an input file:
MONTH   QUARTER  YEAR
2012-07   2012-3        2012
2001-07   2001-3        2001
2002-01   2002-1        2002

I want to make output like so:
MONTH   QUARTER  YEAR
07           3                2012
07           3                2001
01           1                2002

I was having some trouble getting the regular expression to work.  I think
it should be something like the following:
tmp <- uncurated$MONTH
*tmp <- gsub("[^-\\d\\d]","",tmp,perl=TRUE)*
*tmp[tmp=="-"] <- ""*
*curated$MONTH <- tmp*
*
*
tmp <- uncurated$QUARTER
*tmp <- gsub("[^-\\d]","",tmp,perl=TRUE)*
*tmp[tmp=="-"] <- ""*
*curated$QUARTER <- tmp*
*
*
*but it's not quite working. I want to be able to isolate any digits that
occur after the hyphen and to delete everything before and including the
hyphen. Would greatly appreciate any clarification anyone can provide.*

    [[alternative HTML version deleted]]

______________________________________________
R-help at 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.




More information about the R-help mailing list