Я пытаюсь сделать CCA с пакетом vegan, но я получаю сообщение об ошибке при попытке сделать частичную модель cca.
Я делал CCA, как показано в http://rfunctions.blogspot.com/2016/11/canonical-correspondence-analysis-cca.html но когда я пытаюсь выполнить частичную модель cca, я получаю сообщение об ошибке: Error in terms.formula(formula, "Condition", data = data) :
invalid model formula in ExtractVars
Сначала я получаю сообщение об ошибке "Ошибка в rowSums (X): 'x' должно бытьчисловой ", но я смог решить это, используя кодовые имена строк (матрица) <- matrix $ names. </p>
Знаете ли вы, что мне нужно знать, чтобы превзойти эту ошибку?
## CCA IN R USING VEGAN PACKAGE ##
require(vegan)
#import data
spe <- read.delim("spe.txt", header=T)
spatial <- read.delim("spatial.txt", header=T)
env <- read.delim("env.txt", header=T)
#apply log+1
spelog <- decostand(spe[,-1], "log")
#Performe CCA
ccamodel <- cca(spe[,-1]~.,env[,-1], scale=T)
#To perform a Partial CCA, it is necessary to use a condition matrix
#Combine both matrixes
envspatial <- cbind(env,spatial)
nams <- names(envspatial)
rownames(envspatial) <- envspatial$Code
partialccamodel <- formula(paste("spe ~", paste(nams[1: (length(envspatial)-(length(spatial)) )], collapse = " + "),"+ Condition(", paste(nams[(length(envspatial)-(length(spatial)-1) ):length(envspatial)], collapse ="+"),")"))
partialccmodel <- cca(partialccamodel, envspatial)
Я ожидал, что это сработает, чтобы я мог пойти дальше и фактически сделать окончательную модель CCA, но я не могу двигаться дальше, сообщение об ошибке