Hi again,
If you used the function read.table() to read from a csv file into a
data.frame, it is weird that numeric data are converted into factors.
I would check in the original data that you don't have a typo somewhere.
I don't know all the possibilities, but a special character can
definitely make R interpret this variable differently.
For Drenaje, it is normal. In that case you can just use:
caperf$Drenaje <- factor(caperf$Drenaje)
HTH
Ivan
Le 5/18/2010 17:59, Arantzazu Blanco Bernardeau a écrit :
Hello
so, here you have the output of the data frame. The data frame comes from a csv
file.
I could take Gr_2 instead of arcilla, because it is the same value... but
curiously, it is a factor as well.
str(caperf)
'data.frame': 556 obs. of 38 variables:
$ Hoja : int 818 818 818 818 818 818 818 818 818 818 ...
$ idmuestra : Factor w/ 555 levels "1015-I","1015-II",..: 26 27 28 29 31 32
33 34 30 35 ...
$ Año : int 1994 1994 1994 1994 1994 1994 1994 1994 1994 1994 ...
$ x : int 655500 633050 632200 635000 637150 643700 655300 648000
653400 646200 ...
$ y : int 4285800 4283050 4298150 4290000 4294800 4288850 4282700
4290350 4298450 4296650 ...
$ CO_gkg1 : num 3.7 6.5 6.3 2.6 12.1 6.9 3.5 10.8 10.3 3.3 ...
$ NTgkg_1 : num 0.53 1.01 0.66 0.42 1.3 0.82 0.43 1.31 0.85 0.51 ...
$ C_Nratio : num 6.98 6.46 9.55 6.18 9.33 ...
$ C03Ca : num 53.6 38 1.2 1.1 21.1 ...
$ pHw : num 8 8.4 8.3 8.4 8.45 8.2 8.4 8.4 8.1 8.4 ...
$ pHClK : num 7.5 7.4 7.2 7.4 8.3 7.5 7.8 7.4 7.4 7.5 ...
$ CCC : num 9.7 14.4 10.5 7.2 12.8 ...
$ CEdSm : num 0.62 0.72 0.38 0.36 19.35 ...
$ pF1_3atm : num 25.4 21.3 9.1 12.8 24.1 ...
$ pF15atm : num 15.3 10.6 5.8 6.1 8.45 11 3.7 18.8 10 14.3 ...
$ Gr_2 : Factor w/ 391 levels "0","0.71","0.9",..: 200 31 158 36 142
60 377 263 140 151 ...
$ Gr2_20 : num 19.1 39.1 2.9 5.2 NA 12.5 5.7 29.5 17.3 10.5 ...
$ Gr20_50 : num 17.6 9.8 4.7 4 NA 10.4 4.2 13.3 12.5 7.8 ...
$ Gr50_100 : num 14.1 12.2 7.6 9 NA 9.1 6.1 8.5 9.1 18.9 ...
$ Gr100_250 : num 13.4 17.1 28.7 46.2 NA 20.8 28.7 13.6 16.8 32.9 ...
$ Gr250_500 : num 7.1 5.7 28.8 15.2 NA 24.7 23.4 3.8 11.4 6.9 ...
$ Gr500_1000 : num 4 1.8 5 3.9 NA 4.2 14.3 0.9 8.9 2.1 ...
$ Gr1000_2000 : num 1.4 2 1.9 4 NA 4.1 8.9 0.4 4.8 0.9 ...
$ arcilla : Factor w/ 391 levels "0","0.71","0.9",..: 201 32 158 37 NA 61
377 263 141 151 ...
$ limo : num 36.7 48.9 7.6 9.2 0 22.9 9.9 42.8 29.8 18.3 ...
$ arena : num 40 38.8 72 78.3 0 62.9 81.4 27.2 51 61.7 ...
$ SUMA : Factor w/ 15 levels "0","100","100.2",..: 2 2 2 2 1 2 2 2 2 2
...
$ codusosuelo : logi NA NA NA NA NA NA ...
$ pendiente : Factor w/ 9 levels "0","1","2","3",..: 3 2 3 3 2 4 3 2 2 3 ...
$ profutil : logi NA NA NA NA NA NA ...
$ profutil.1 : int 50 110 120 40 80 52 30 120 37 80 ...
$ pedregosidad: int 0 0 0 2 0 4 4 0 3 3 ...
$ Drenaje : int 4 4 4 4 1 4 5 3 4 4 ...
$ codsuelo : num 1.1 2.1 3.1 2.1 12.3 2.5 2.5 4.1 2.5 2.1 ...
$ textura : logi NA NA NA NA NA NA ...
$ m.original : Factor w/ 7 levels "Calizas . dolomías y areniscas",..: 4 7 7
2 2 7 7 7 7 7 ...
$ GRUPOPPAL : Factor w/ 13 levels "Arenosoles","Calcisoles",..: 11 2 3 2 12
2 2 4 2 2 ...
$ SUELO : Factor w/ 40 levels "Arenosol calcárico",..: 30 3 8 3 36 7 7
10 7 3 ...
In the other side, the variable Drenaje (drainage) that is factor mode, appears
as integer.
Thanks a lot!
Arantzazu Blanco Bernardeau
Dpto de Química Agrícola, Geología y Edafología
Universidad de Murcia-Campus de Espinardo
----------------------------------------
Date: Tue, 18 May 2010 17:49:54 +0200
From: ivan.calan...@uni-hamburg.de
To:
Subject: Re: [R] "Re: Change class factor to numeric"
Hi,
I think that providing the output from str(data array or whatever you
have) would help.
Because, for now, we don't have much idea of what you really have.
Moreover, some sample data is always welcomed (using the function dput
for example)
Ivan
Le 5/18/2010 17:36, Arantzazu Blanco Bernardeau a écrit :
sorry I had a mistake sending my question without a subject. I do resend again.
Please excuse me.
Hello
I have a data array with soil variables (caperf), in which the variable "clay"
is factor (as I see entering str(caperf)) . I need to do a regression model, so I need to
have arcilla (=clay) as a numeric variable. For that I have entered
as.numeric(as.character(arcilla))
and even entering
'as.numeric(levels(arcilla))[arcilla]'the variable is resting as factor, and
the linear model is not valid (for my purposes).
The decimal commas have been converted to decimal points, so I have no idea of
what to do.
Thanks a lot
Arantzazu Blanco Bernardeau
Dpto de Química Agrícola, Geología y Edafología
Universidad de Murcia-Campus de Espinardo
_________________________________________________________________
Diseñar aplicaciones tiene premio. ¡Si eres desarrollador no esperes más!
http://www.imaginemobile.es
_________________________________________________________________
Recibe en tu HOTMAIL los emails de TODAS tus CUENTAS. + info
______________________________________________
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.
--
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calan...@uni-hamburg.de
**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/mitarbeiter.php
______________________________________________
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.
--
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calan...@uni-hamburg.de
**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/mitarbeiter.php
______________________________________________
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.