Масштабирование в объектах RDA Vegan и функция envfit - PullRequest
0 голосов
/ 26 февраля 2019

Я только начал работать с функцией RDA в пакете vegan и хочу воссоздать пример в Числовая экология (Legendre 1998), чтобы помочь мне лучше понять функцию и созданный объект RDA.Несмотря на попытки нескольких методов, я не могу создать один из векторов ординации для переменной среды, которая соответствует фигуре в книге.

Пример. Я пытаюсь воссоздать анализ RDA, который описывает численность шести видов рыб на десяти участках с четырьмя переменными участками окружающей среды.Три из объясняющих переменных (коралл, песок, другие) являются двоичными, переменными присутствия / отсутствия.Наборы данных ниже.

Вид: (Ymatrix)

   site sp1 sp2 sp3 sp4 sp5 sp6
1     1   1   0   0   0   0   0
2     2   0   0   0   0   0   0
3     3   0   1   0   0   0   0
4     4  11   4   0   0   8   1
5     5  11   5  17   7   0   0
6     6   9   6   0   0   6   2
7     7   9   7  13  10   0   0
8     8   7   8   0   0   4   3
9     9   7   9  10  13   0   0
10   10   5  10   0   0   2   4

Пояснительные переменные (Xmatrix):

   site depth coral sand other
1     1     1     0    1     0
2     2     2     0    1     0
3     3     3     0    1     0
4     4     4     0    0     1
5     5     5     1    0     0
6     6     6     0    0     1
7     7     7     1    0     0
8     8     8     0    0     1
9     9     9     1    0     0
10   10    10     0    0     1

Этофигура, которую я хотел бы воссоздать:

Триплот Legenere Fish - Шкала расстояний (Масштаб 1)

Вот код, который я использовал для анализа:

ex_rda <- rda(Ymatrix[, -1] ~., data = Xmatrix[, -1], scale = F)

Я установил для аргумента "scale" значение false, чтобы получить собственные значения, соответствующие представленным в примере из учебника.Несмотря на то, что удалось установить соответствие собственных векторов, задав для «шкалы» значение «ложь», оценки по месту и видам не соответствуют тексту.Аргумент «масштаба» определяется как масштабирование вида до единичной дисперсии, но я не совсем понимаю роль, которую этот аргумент играет в анализе и почему он изменяет собственные векторы.

Даже с учетом различий в видахи для оценки площадок, базовая функция построения графика выдает тройную диаграмму почти точно так же (используя масштабирование = 1).Единственным отличием является исключение переменной среды.

Поскольку три переменные - это наличие / отсутствие, я понимаю, что для правильной работы необходимо исключить одну из переменных.Чтобы отобразить пропущенную переменную среды в триплоте, я попытался использовать функцию envfit.Вот код, используемый для этого:

fit <- envfit(ex_rda, Xmatrix[,-1], perm = 999, display = "lc")
scores(fit, "vectors")

plot(fit, p.max = 0.999, col = "green", cex = 0.8)

При этом новые векторы среды не совпадают с исходными векторами, созданными с помощью базовой функции построения (синий = оригинал, зеленый = новый).См. Ниже:

RDA_Triplot_ENV_vectors

Оценки биплотов из функции "envfit" совпадают с суммированными в объекте rda:

Объект RDA

Biplot scores for constraining variables
         RDA1    RDA2     RDA3 PC1 PC2 PC3
depth  0.4227 -0.5591 -0.71325   0   0   0
coral  0.9885  0.1508 -0.01178   0   0   0
sand  -0.5565  0.8176  0.14771   0   0   0

Envfit баллы

       RDA1       RDA2
depth  0.4226500 -0.5591426
coral  0.9884960  0.1507874
sand  -0.5565166  0.8176000
other -0.4040797 -0.9058435

Я попробовал несколько разных способов, чтобы попытаться понять, почему отображаемые векторы сместились.Я изменил аргумент «scale» в функции rda на true, и векторы, казалось, совпали, но больше не соответствовали фигуре в Legendre.Я также попытался переключиться на «lc» партитуры и добавить аргумент «scale» в функцию envfit и установить для него значение false.Оба из них вызвали небольшие изменения.

Это несоответствие между переменными среды связано с исходным аргументом "scale" в функции rda?Или функция envfit?Мне также интересно узнать о масштабировании, которое функция вегана использует для оценки мест и видов, и о том, как оно отличается от алгебраических вычислений, описанных в Legendre 1998.

Любая помощь по этой теме очень ценится!

...