Try this: x <- factor(c("220", "220a", "221", "221b", "B221")) pat <- "[^0-9]+" # match non-digits nums <- as.numeric(gsub(pat, "", x)) has.lets <- as.numeric(regexpr(pat, x) > 0)
On Tue, Jul 8, 2008 at 7:11 AM, Kunzler, Andreas <[EMAIL PROTECTED]> wrote: > Dear Everyone, > > > > I try to automatically manipulate the data of a variable (class = > factor) like > > > > x > > 220 > > 220a > > 221 > > 221b > > B221 > > > > Into two variables (class = numeric) like > > > > x y > > 220 0 > > 220 1 > > 221 0 > > 221 1 > > 221 1 > > > > y has to carry the information about the class (number or string) of the > former x-Variable. > > > > I could do it by hand like > > > > x[x == "220a"] <- 220 > > y[x == "220a"] <- 1 > > > > but x has way to many expressions. > > > > So I wondered if I could use a regular expression like OR ANY OTHER WAY > > > > x[x == [0-9]{3}a] <- regular expression > > y[x == [0-9]{3}] <- 1 > > > > > > Thanks a lot > > > > > [[alternative HTML version deleted]] > > ______________________________________________ > 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. > ______________________________________________ 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.