Hi everyone,
I am working with the dbFD function of the FD package, and there's something
funny happening with the value of sing.sp in the output. Basically, I have
a species-function matrix and a community matrix. One site in particular
has 6 species, 4 of which have identical functional coding. I thus expect
nbsp = 6 and sing.sp = 2 for this site. However, nbsp = sing.sp = 6. This
confuses me. I have read the help files and the FD manual and I've googled,
but I remain unenlightened. (and I checked to be sure that I'm running the
latest version of FD, 1.0-7)
Am I entirely misunderstanding what sing.sp means? Do I have a coding
problem? Is this a bug? Hopefully someone can set me straight.
Here you can see the same problem for a simplified example:
fd <- matrix (c("a","b","c","d",
"a","b","c","d",
"b","c","d","a",
"c","d","b","a"), byrow = TRUE, nrow=4,
ncol=4)
rownames (fd) <- c("spA", "spB", "spC",
"spD") # species
colnames (fd) <- c("F1", "F2", "F3",
"F4") # functional categories
fd # note that spA and spB have identical functional coding
comm <- matrix (c(1,0,1,0, 1,0,1,0, 0,1,1,0, 0,1,0,1), nrow=4, ncol=4)
rownames (comm) <- c("site1", "site2",
"site3", "site4")
colnames (comm) <- c("spA", "spB", "spC",
"spD")
comm # note that site 1 has only spA and spB, so I'd expect it to
# have sing.sp = 0 (no singular species)
require (FD)
ex1 <- dbFD (fd, comm, w.abun = FALSE, corr="cailliez",
clust.type="ward")
ex1 # site 1 comes out with sing.sp = 2. Why is that?
Any insight / advice would be greatly appreciated!
Many thanks,
Sarah
University of Chicago
[[alternative HTML version deleted]]