Как построить график RDA на основе расстояния (dbRDA), включая переменную группировки - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть набор данных, охватывающий данные об отсутствии растений в разных местах.Каждое место было отобрано дважды, в 2017 и 2018 годах. Помимо данных о заводе, у меня есть множество переменных среды.Я хочу анализировать данные, используя RDA на основе расстояния.

Набор данных:

PAdata <- matrix(rbinom(10 * 5, 1, 0.5), ncol = 15, nrow = 20)

alldata <- data.frame(moisture = sample(1:100, 20, replace=TRUE), salinity = sample(1:10, 20, replace=TRUE), availableP = sample(0.00:3.00, 20, replace=TRUE), year = c(rep(2017, 10), rep(2018, 10)))

Набор данных PA - это отсутствие 15 видов на 10 участках в 2017 году (первые 10строки) и 2018 (последние 10 строк).Мои реальные данные содержат больше графиков и видов, а также больше факторов окружающей среды.

Во-первых, я впервые использовал vegdist (пакет vegan) для вычисления матрицы различий для данных об отсутствии присутствия в период между 2017 и 2018 годами. Это даетМне нужна матрица различий, которая будет использоваться для дальнейшего анализа:

distance <- vegdist(PAdata, method = "jaccard", binary = TRUE)

Затем я должен создать свой анализ dbRDA с использованием матрицы вместе с данными об окружающей среде (Alldata).Я использую функцию capscale из пакета vegan:

rda <- capscale(na.omit(distance) ~ moisture + salinity + availableP ,
                  data = alldata, 
                  distance = "jaccard", sqrt.dist = TRUE)

Далее я хотел бы представить свои данные, используя год в качестве переменной группировки, что позволит различать 2017 и 2018 на графике.Я знаю, что первые 10 строк в моих PAdata представляют присутствие / отсутствие в 2017 году, а следующие 10 строк - PA для тех же 10 местоположений в 2018. Есть ли способ сделать это видимым на графике?Я знаю, что в настоящее время информация о году не связана ни с матрицей различий, ни с dbRDA, но не может понять, как их связать.На данный момент я только смог визуализировать результаты, используя общую функцию графика, а также функцию ordiplot.Я не смог создать сюжет, используя ggplot2.

plot(rda)
ordiplot(rda)

Буду признателен за любые предложения!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...