I am quite new to R, so please bear over with me if I have problems with the
R terminology.
I want to (try to) use R for some analyses within vegetation ecology, using
the vegan package. I have my data in a postgresql database, and I manage to
get them into R as a dataframe with columns for respectively: Name of the
analysed m2, Name of the species, coverage of species in the square in %. I
want to have the dataset transformed into a table similiar to the example
tables in vegan, i.e, one column for each species, one row for each square.
What I have done so far is to establish a connection to postgres using Rdbi,
fetching the data :
dca.raw<-dbGetResult(dcaq)
dca.raw
nornavn dekningsgrad ruteid
1 Fjellmarik?pe 1 LIASB01
2 Gulaks 3 LIASB01
3 Harerug 1 LIASB01
4 Brearve 1 LIASB01
5 Sveve sp. 5 LIASB01
6 Finnskjegg 50 LIASB01
7 Setergr?urt 1 LIASB01
8 Engrapp-gruppa 5 LIASB01
9 Legeveronika 1 LIASB01
etc.
(Norwegian species names, nornavn = species, dekningsgrad= coverage
ruteid=name of square)
then I converted it to a data frame:
dca.frame <- data.frame(dca.raw)
and
dca.frame
gives an output that seems reasonable.
so, I thought I could use xtabs and tried:
which, as far as I can see, is quite analogous to the inner part of the
example given:
ftable(xtabs(breaks ~ wool + tension + replicate, data = warpbreaks))
But I end up with:
Error in Summary.factor(..., na.rm = na.rm) :
"sum" not meaningful for factors
And then, as a still quite clueless R-user, I am stranded. I have been
searching in the docs and mailinglist, but have not came across much
information on xtabs and its prerequisites, I have probably stumbled into
some quite basic R things, so any help would be greatly appreciated.
Best regards,
Morten Sickel
GIS Consultant
Dr?bak, Norway
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
%I am quite new to R, so please bear over with me if I have problems with the
%R terminology.
%
%I want to (try to) use R for some analyses within vegetation ecology, using
%the vegan package. I have my data in a postgresql database, and I manage to
%get them into R as a dataframe with columns for respectively: Name of the
%analysed m2, Name of the species, coverage of species in the square in %. I
%want to have the dataset transformed into a table similiar to the example
%tables in vegan, i.e, one column for each species, one row for each square.
%
%What I have done so far is to establish a connection to postgres using Rdbi,
%fetching the data :
%> dca.raw<-dbGetResult(dcaq)
%> dca.raw
% nornavn dekningsgrad ruteid
%1 Fjellmarikåpe 1 LIASB01
%2 Gulaks 3 LIASB01
%3 Harerug 1 LIASB01
%4 Brearve 1 LIASB01
%5 Sveve sp. 5 LIASB01
%6 Finnskjegg 50 LIASB01
%7 Setergråurt 1 LIASB01
%8 Engrapp-gruppa 5 LIASB01
%9 Legeveronika 1 LIASB01
%etc.
%(Norwegian species names, nornavn = species, dekningsgrad= coverage
%ruteid=name of square)
%then I converted it to a data frame:
%> dca.frame <- data.frame(dca.raw)
%and
%> dca.frame
%gives an output that seems reasonable.
%so, I thought I could use xtabs and tried:
%> xtabs(dekningsgrad ~ ruteid+nornavn, data=dca.frame)
%which, as far as I can see, is quite analogous to the inner part of the
%example given:
%> ftable(xtabs(breaks ~ wool + tension + replicate, data = warpbreaks))
%
%But I end up with:
%Error in Summary.factor(..., na.rm = na.rm) :
% "sum" not meaningful for factors
I guess dekningsgrad (didn't know Norwegian can be this close to
German:Deckungsgrad) is read in as a factor. You can check the structure
of an object with str(), as in the example below
If this is the case you should convert it to numeric, something like
dca.raw$dekningsgrad<-as.numeric(dca.raw$dekningsgrad)
and go ahead
JN
data(UCBAdmissions)
DF <- as.data.frame(UCBAdmissions)
xtabs(Freq ~ Gender + Admit, DF)
Admit
Gender Admitted Rejected
Male 1198 1493
Female 557 1278
str(DF)
`data.frame': 24 obs. of 4 variables:
$ Admit : Factor w/ 2 levels "Admitted","Reje..": 1 2 1 2 1 2 1 2 1 2 ...
$ Gender: Factor w/ 2 levels "Male","Female": 1 1 2 2 1 1 2 2 1 1 ...
$ Dept : Factor w/ 6 levels "A","B","C","D",..: 1 1 1 1 2 2 2 2 3 3 ...
$ Freq : num 512 313 89 19 353 207 17 8 120 205 ...
%
%And then, as a still quite clueless R-user, I am stranded. I have been
%searching in the docs and mailinglist, but have not came across much
%information on xtabs and its prerequisites, I have probably stumbled into
%some quite basic R things, so any help would be greatly appreciated.
%
%Best regards,
%
%--
%Morten Sickel
%GIS Consultant
%Drøbak, Norway
%-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
%r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
%Send "info", "help", or "[un]subscribe"
%(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
%_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
%
***********************************************************************
Jens Nieschulze
Institute for Forest Biometrics & Phone: ++49-551-39-12107
Applied Computer Science Fax : ++49-551-39-3465
Buesgenweg 4
37077 Goettingen E-mail: jniesch at uni-forst.gwdg.de
GERMANY http://www.uni-forst.gwdg.de/~jniesch
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
On Wednesday 27 February 2002 09:47, Jens Nieschulze wrote:
On Tue, 26 Feb 2002, Morten Sickel (I) wrote:
% I want to (try to) use R for some analyses within vegetation ecology,
% using the vegan package.
(snip)
%But I end up with:
%Error in Summary.factor(..., na.rm = na.rm) :
% "sum" not meaningful for factors
I guess dekningsgrad (didn't know Norwegian can be this close to
German:Deckungsgrad) is read in as a factor.
(on a global scale, German and Norwegian are dialects:-) )
Well, the problem turned out to be exactly the opposite. but you pointed me
in the right direction, as I didn't know about the str() function:
str(dca.raw)
`data.frame': 2213 obs. of 3 variables:
$ nornavn : chr "Fjellmarik?pe" "Gulaks" "Harerug" "Brearve" ...
$ dekningsgrad: num 1 3 1 1 5 50 1 5 1 3 ...
$ ruteid : chr "LIASB01" "LIASB01" "LIASB01" "LIASB01" ...
so a couple of factor()s fixed it for me.
Thanks a lot!
Morten
Morten Sickel
GIS Consultant
Dr?bak, Norway
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._