Как вы масштабируете переменные и измеряете расстояние от координаты CCA до центроида в веганском языке?

Я новый студент в лаборатории биоинформатики, пожалуйста, не стесняйтесь поправлять меня, если что-то не так.

Я сделал CCA, используя веганский пакет в R со следующим скриптом:

cca.analysis <- cca(mod ~ genus1 + genus2 + genus3, data)

В настоящее время я пытаюсь измерить баллы/вклад каждой переменной (рода), чтобы определить, какая из них оказала наибольшее влияние на изменение сообщества в моем наборе данных. У меня есть две проблемы:

  1. Как вы перемасштабируете вклад каждого рода независимо от его относительной частоты по отношению к другим родам? Например, род 1 более распространен по сравнению с родом 3, а это означает, что он внесет больший вклад в анализ.
  2. Какой скрипт или функцию из пакета вы бы использовали для измерения расстояния от центра тяжести, чтобы определить вклад рода в вариацию?

Изменить: я сделал воспроизводимый пример, чтобы помочь понять вопрос. Вот данные рода:

║ genus_1 ║ genus_2 ║ genus_3 ║ ║ 15.635 ║ 10.293 ║ 0 ║ ║ 9.7813 ║ 9.0061 ║ 5.4298 ║ ║ 15.896 ║ 2.5612 ║ 3.4335 ║ ║ 4.0054 ║ 0 ║ 2.0043 ║ ║ 15.929 ║ 16.213 ║ 0 ║ ║ 11.072 ║ 15.434 ║ 0 ║ ║ 12.539 ║ 7.2498 ║ 0 ║ ║ 9.1164 ║ 11.526 ║ 2.1649 ║ ║ 4.5011 ║ 0 ║ 0 ║ ║ 11.66 ║ 13.46 ║ 5.1416 ║

Часть mod в приведенной мной формуле соответствует следующим данным, которые я извлек из анализа PCoA:

║ Coord_1 ║ Coord_2 ║ Coord_3 ║ Coord_4 ║ Coord_5 ║ Coord_6 ║ Coord_7 ║ ║ 0.954 ║ 0.928 ║ 0.952 ║ 1.009 ║ 1.016 ║ 0.943 ║ 1.031 ║ ║ 0.942 ║ 1.088 ║ 1.100 ║ 1.015 ║ 1.080 ║ 1.140 ║ 1.002 ║ ║ 0.932 ║ 0.989 ║ 1.005 ║ 0.974 ║ 0.990 ║ 1.047 ║ 1.035 ║ ║ 0.929 ║ 1.111 ║ 1.094 ║ 0.847 ║ 0.932 ║ 0.940 ║ 1.016 ║ ║ 0.947 ║ 1.008 ║ 0.937 ║ 1.055 ║ 1.056 ║ 0.964 ║ 1.022 ║ ║ 0.948 ║ 1.054 ║ 0.987 ║ 1.018 ║ 1.017 ║ 0.965 ║ 0.994 ║ ║ 0.946 ║ 1.023 ║ 0.911 ║ 1.014 ║ 1.062 ║ 1.076 ║ 1.063 ║ ║ 1.041 ║ 1.000 ║ 0.945 ║ 0.872 ║ 1.036 ║ 0.907 ║ 1.029 ║ ║ 0.926 ║ 1.107 ║ 1.027 ║ 0.943 ║ 0.993 ║ 1.006 ║ 0.947 ║ ║ 1.038 ║ 1.016 ║ 1.008 ║ 1.013 ║ 0.997 ║ 0.891 ║ 0.988 ║

Вы можете построить это в R с помощью функции plot, и, надеюсь, получится что-то вроде этого: график CCA


person adam.bj    schedule 09.01.2019    source источник
comment
Вам будет легче помочь, если вы включите простой воспроизводимый пример с образцом ввода и желаемым выводом, которые можно использовать для тестирования и проверки возможных решений. Просто спрашивать рекомендации по пакету не по теме. Просто опишите проблему, которую необходимо решить. Если есть пакет, который уже делает это, кто-то включит это в свой ответ. Или можно легко обойтись без пакета. Вы должны просто задавать один четкий вопрос за раз, публикуя здесь.   -  person MrFlick    schedule 10.01.2019
comment
Спасибо за совет, @MrFlick. Теперь я добавил больше информации к вопросу. Я считаю, что вопрос не требует перенаправления на другой пакет, поскольку на обе его части можно ответить, используя пакет vegan.   -  person adam.bj    schedule 10.01.2019


Ответы (1)


На самом деле масштабирование ограничивающих переменных (genus1 и т. д.) не влияет на их вклад в модель. Вы можете проверить это, умножив одно из ваших ограничений на некоторое число (скажем, 10) и сравнив полученные модели и убедившись, что они не меняются. Что изменится, так это коэффициенты регрессии для ограничений, но здесь они не представляют интереса (коэффициент регрессии изменится, чтобы отменить эффект умножения).

Ключевой момент: что вы подразумеваете под «вкладом»? Если вы имеете в виду, насколько каждое из этих ограничений «объясняет» общую изменчивость данных, вы можете получить эту информацию из anova(cca.analysis, by = "terms") или, альтернативно, из anova(cca.analysis, by = "margin"). Первый анализ будет представлять собой последовательную декомпозицию объясненной вариации, в которой компоненты в сумме составляют до 100 % объясненного, а второй анализ — разложение на уникальные члены, в которых компоненты не составляют в сумме 100 %. До трех компонентов (род), вы также можете использовать функцию varpart (для cca с аргументом chisquare = TRUE: для этого вам нужна последняя веганская версия), которая разбивает общую объясненную вариацию на уникальные и совместные вклады.

Если вы имеете в виду что-то другое под "вкладом", пожалуйста, объясните.

person Jari Oksanen    schedule 10.01.2019
comment
Спасибо, @Jari Oksanen за ответ. Действительно, то, что я имел в виду под вкладом, — это процентная дисперсия, объясняемая каждым родом в PCoA, которые были рассчитаны ранее. Однако не могли бы вы помочь мне определить разницу в использовании этого метода по сравнению с тем, который я нашел в исследовательской статье? Я не уверен, что мне разрешено публиковать здесь ссылку, поэтому я опубликую выдержку из дополнительной информации к статье: Вклад рода (оценка) был рассчитан как расстояние от координаты CCA рода до центроида CCA. Большие значения указывают на более высокий вклад в изменение сообщества. - person adam.bj; 10.01.2019
comment
Этот литературный подход выглядит совсем иначе. Я предполагаю, что они использовали необработанные данные вместо осей PCoA в CCA. Однако они сделали это неправильно: CCA — это взвешенный метод ординации, и вам следует смотреть на взвешенные квадраты расстояний от начала координат, если вы хотите иметь вклад переменных столбца (видов) в общий анализ. В веганском их можно рассчитать с помощью goodness(). Я думаю, вам не следует использовать PCoA, скоординированный в CCA, но вы можете использовать RDA. Однако я не уверен, что такого рода вклад может быть осмысленно подсчитан. - person Jari Oksanen; 11.01.2019
comment
Я подозревал, что что-то не так, но не было достаточно информации о методах, чтобы определить это. В документе (не дополнительный материал) для результатов указано 10 основных участников изменчивости сообщества, как определено каноническим анализом соответствия немасштабированной численности родов, нанесенным на два первых измерения PCoA (стрелки масштабированы по вкладу). - Я надеялся, что это поможет мне определить наиболее важные роды в анализе моего сообщества, но это не похоже на надежный подход. Я попытаюсь сделать анализ RDA и посмотреть, что я получу. - person adam.bj; 12.01.2019