Hi, I have this same problem using read.xls in a table that I have NA values.
Look: Using the importing from a csv file using read.table > summary(dados) Trat V1 V2 A:5 Min. :1.0 Min. :1.000 B:5 1st Qu.:1.0 1st Qu.:1.000 Median :1.5 Median :2.000 Mean :1.5 Mean :1.556 3rd Qu.:2.0 3rd Qu.:2.000 Max. :2.0 Max. :2.000 NA's :1.000 Now using read.xls > summary(dados.xls) Trat V1 V2 A:5 Min. :1.0 1 :4 B:5 1st Qu.:1.0 2 :5 Median :1.5 NA :1 Mean :1.5 3rd Qu.:2.0 Max. :2.0 Look that the V2 variable in read.xls is wrong convert to factors. Anybody know how to fix it in read.xls? Thanks Ronaldo Em 03-06-2011 12:34, Petr PIKAL escreveu: > Hi > >> [R] Problem using read.xls - Everything converted to factors >> >> Hallo, >> >> I would like to use to read.xls function from the gdata package to read >> data from Microsoft Excel files but I experienced a problem: For example >> I used the following code: >> >> testfile<-read.xls("/home/.../wsjecon0603.xls", #file path >> header=F, >> dec=",", >> na.strings="n.a.", >> skip=5, >> sheet=2, >> col.names=c("Name", > "Firm","GDP1","GDP2","GDP3","GDP4","CPI5", >> "CPI11","UNEMP5","UNEMP11","PROF03","PROF04","STARTS03","STARTS04"), >> nrows=54, >> >> #colClasses=c >> > (character,character,numeric,numeric,numeric,numeric,numeric,numeric,numeric,numeric,numeric,numeric,numeric,numeric) >> ) >> print(testfile) >> >> Although the xls file contains numeric values in all the columns except >> the ones which I named "Name" and "Firm", everything in the data frame >> has "factor" as class. I tried to use the colClasses option as above and >> as well with " "'s around each word, but this does not work and I will > Hm. That shall work. You have got some advice from Gabor but in case > numeric columns come as non numeric I often find a problem with some kind > of formating the original values. Numbers like 10 253,52 are treated as > nonnumeric as there is extra space character between thousands and > hundereds. Maybe also na.strings are not always marked as n.a. but > sometimes the value is missing and I suppose this can lead to conversion > of all column to character vector. > >> always receive the following error: >> >> Fehler in is(object, Class) : >> versuche einen Slot "className" von einem Objekt der einfachen Klasse >> ("list") ohne Slots anzufordern >> Calls: read.xls -> read.csv -> read.table -> <Anonymous> -> is >> >> After some hours of reasearch I figured out how I can manually change >> the classes of the columns: >> >> testfile$GDP2<-as.numeric(levels(testfile$GDP2))[testfile$GDP2] >> testfile$Name<-as.character(levels(testfile$Name))[testfile$Name] #and > so on > > you can spare some time to use sapply > > testfile[,character columns]<- sapply(testfile[,character columns], > as.numeric) > > shall convert all character columns to numeric at once but you will get > NAs to all values which could not be converted for any reason. > > Regards > Petr > > >> This works, but is a lot of work since I have to import many different >> data sets. So I was wondering if there is another way to let the classes >> be recognized correctly. >> >> Additionally I would like to know if there is any way to import data >> from different sheets with the same layout at once into one data frame. >> >> I use Ubuntu 11.04 with Rkward if this is of any importance. >> >> Thanks in advance for your answers, >> Sebastian >> >> ______________________________________________ >> 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. > -- 4ª lei - Aja como se seu orientador estivesse sempre certo, na maior parte do tempo. --Herman, I. P. 2007. Following the law. NATURE, Vol 445, p. 228. > Prof. Ronaldo Reis Júnior | .''`. UNIMONTES/DBG/Lab. Ecologia Comportamental e Computacional | : :' : Campus Universitário Prof. Darcy Ribeiro, Vila Mauricéia | `. `'` CP: 126, CEP: 39401-089, Montes Claros - MG - Brasil | `- Fone: (38) 3229-8192 | ronaldo.r...@unimontes.br | http://www.ppgcb.unimontes.br/lecc | LinuxUser#: 205366 [[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.