You could use something like y <- gsub('([0-9]+(.[0-9]+)?)?.*','\\1',x) as.numeric(y)
But maybe there's a much nicer way. Jonne. On Mon, 2005-01-31 at 08:51 +0000, Mike White wrote: > Hi > Does anyone know if there is a function similar to as.numeric that will > extract a numeric prefix from a string as in the following examples? > > x<-c(3, "abc", 5.67, "2.4a", "6a", "6b", "2.4.a", 3, "4.2a") > df.x<-data.frame(Code=x) > x.str<-levels(df.x[,1]) > # required function result > 2.40 3.00 4.20 5.67 6.00 NA > > Thanks > Mike White > > ______________________________________________ > R-help@stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html -- R user <[EMAIL PROTECTED]> ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html