Hello,
On 26 Nov 2008 at 22:53, Kinoko wrote: > Hi, > > I would like to convert my "character" sequences in my matrix/ > data.frame into "numeric" where it is possible. > I would also like to retain my alphabetic character strings in their > original forms. "5.1" > 5.1 "hm" > "hm" > > k<-matrix(c("aa", "bb", 1,2, 4.3, 0), nrow=2) > mode(k) <- "numeric" > # ln1 coerces numeric chars into "character" and > # ln2 replaces alphabet chars with NA (with warnings) > # => OK as matrix can't have mixed types Perhaps there is a simpler solution, but this should work: k <- matrix(c("aa", "bb", 1 ,2, 4.3, 0), nrow=2) write.table(k,"'xx.txt", col.names=TRUE, row.names=FALSE, sep="'\t", quote=FALSE) k <- read.table("xx.txt", header=TRUE, sep="\t") summary(k) > > k<-matrix(c("aa", "bb", 1,2, 4.3, 0), nrow=2) > g<-as.data.frame(k, stringsAsFactos=FALSE) > g[,2] > # returns: > # [1] 1 2 > # Levels: 1 2 > # hm... let them be levels then... > > sum(g[,2]) > # going down in flames > > g[,2] <- as.numeric(g[,2]) > sum(g[,2]) > # is the winner of the day, > # but I have a hunch that there must be something more trivial/general > solution. > > - I'm looking for something like, as.data.frame(... > as.numeric.if.possible=TRUE) , > if possible. > - Mainly, I don't know in advance if a column has alphabetical or > numeric characters. - I have relatively large matrices (or a > relatively slow PC) (max 100,000 x 100 "cells"), if that matters > > *** *** *** *** *** > Another related problem of mine is to create data.frames with mixed > types (it should be possible, shouldn't it). > > d<-data.frame("b"=seq(1,3)) > d<-cbind(a,b) > typeof(d) > # "d" was coerced into "character" ## In this case you can do: a <- c("aa", "bb", "cc") d <- data.frame(a=a, b=seq(1, 3)) summary(d) ## or d <- data.frame(b=seq(1, 3)) d$a <- c("aa", "bb", "cc") summary(d) > > > any help is greatly appreciated, > > gabor > > ______________________________________________ > 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. > -- Héctor Villalobos <[EMAIL PROTECTED]> CICIMAR - IPN La Paz, Baja California Sur, MÉXICO [[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.