我一直在获取错误: rowSums(veg)中的错误:
'x' must be numeric我从一个大数据集中细分了一小部分,当我运行DCA排序时,我一直得到上面提到的错误消息。我检查过了,但是在de行中没有字符数据。
install.packages("vegan")
library(vegan)
Dataveg2018A <- subset(DatasetMerg, Year == "2018" & Block == "A",
select = 4:7)
ord1<-decorana(Dataveg2018A)有人能告诉我我做错了什么吗?
子集示例数据(DatasetMerg)
structure(list(Year = structure(c(3L, 3L, 3L, 3L, 3L, 3L, 3L,
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L), .Names = c("18A01",
"18A02", "18A03", "18A04", "18A05", "18A06", "18A07", "18A08",
"18A09", "18A10", "18A11", "18A12", "18A13", "18A14", "18A15",
"18A16", "18A17", "18A18", "18A19", "18A20"), .Label = c("2001",
"2008", "2018"), class = "factor"), Block = structure(c(1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L), .Names = c("18A01", "18A02", "18A03", "18A04", "18A05",
"18A06", "18A07", "18A08", "18A09", "18A10", "18A11", "18A12",
"18A13", "18A14", "18A15", "18A16", "18A17", "18A18", "18A19",
"18A20"), .Label = c("A", "B", "C", "D", "E", "F", "G", "H",
"I", "J", "X"), class = "factor"), Plot = structure(1:20, .Names = c("18A01",
"18A02", "18A03", "18A04", "18A05", "18A06", "18A07", "18A08",
"18A09", "18A10", "18A11", "18A12", "18A13", "18A14", "18A15",
"18A16", "18A17", "18A18", "18A19", "18A20"), .Label = c(" 1",
" 2", " 3", " 4", " 5", " 6", " 7", " 8", " 9", "10", "11", "12",
"13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23",
"24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34",
"35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45",
"46"), class = "factor"), Agrimonia.eupatoria = structure(c(3L,
2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L), .Names = c("18A01", "18A02", "18A03", "18A04", "18A05",
"18A06", "18A07", "18A08", "18A09", "18A10", "18A11", "18A12",
"18A13", "18A14", "18A15", "18A16", "18A17", "18A18", "18A19",
"18A20"), .Label = c("0", "1", "2", "6"), class = "factor"),
Agrostis.capillaris = structure(c(1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Names = c("18A01",
"18A02", "18A03", "18A04", "18A05", "18A06", "18A07", "18A08",
"18A09", "18A10", "18A11", "18A12", "18A13", "18A14", "18A15",
"18A16", "18A17", "18A18", "18A19", "18A20"), .Label = c("0",
"2", "3", "4", "6"), class = "factor"), Agrostis.gigantea = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 3L, 2L, 1L, 3L, 3L,
4L, 3L, 1L, 1L), .Names = c("18A01", "18A02", "18A03", "18A04",
"18A05", "18A06", "18A07", "18A08", "18A09", "18A10", "18A11",
"18A12", "18A13", "18A14", "18A15", "18A16", "18A17", "18A18",
"18A19", "18A20"), .Label = c("0", "2", "3", "4", "6"), class = "factor"),
Agrostis.stolonifera = structure(c(5L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Names = c("18A01",
"18A02", "18A03", "18A04", "18A05", "18A06", "18A07", "18A08",
"18A09", "18A10", "18A11", "18A12", "18A13", "18A14", "18A15",
"18A16", "18A17", "18A18", "18A19", "18A20"), .Label = c("0",
"1", "18", "2", "3", "38", "4", "6", "68", "8"), class = "factor")),
.Names = c("Year",
"Block", "Plot", "Agrimonia.eupatoria", "Agrostis.capillaris",
"Agrostis.gigantea", "Agrostis.stolonifera"), row.names = c("18A01",
"18A02", "18A03", "18A04", "18A05", "18A06", "18A07", "18A08",
"18A09", "18A10", "18A11", "18A12", "18A13", "18A14", "18A15",
"18A16", "18A17", "18A18", "18A19", "18A20"), class = "data.frame")发布于 2019-02-21 20:50:56
您的变量都是非数值的(因子),在原始DatasetMerg及其子集(Dataveg2018A)中都是如此。您可以看到这个发出命令str(DatasetMerg),它将所有变量作为因子(以及它的子集相同)。您也可以在您自己显示的完整DatasetMerg中看到这一点,所有物种数据都是作为因子提供的。这只是你们物种中的第一个,你们给出的数据如下:
Agrostis.capillaris = structure(c(1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Names = c("18A01",
"18A02", "18A03", "18A04", "18A05", "18A06", "18A07", "18A08",
"18A09", "18A10", "18A11", "18A12", "18A13", "18A14", "18A15",
"18A16", "18A17", "18A18", "18A19", "18A20"), .Label = c("0",
"2", "3", "4", "6"), class = "factor")请注意最后一个定义class = "factor"。值(全部为1L)给出了要素级别的索引,而这些级别是在.Label中给出的。所以你所有的数据都是1 (1L),这些数据被显示为.Labels[1L] == c("0", "2", "3", "4", "6")[1L] == "0",它是非数字的(一个字符)。
https://stackoverflow.com/questions/54802812
复制相似问题