Привет, я пытаюсь построить свои nmds данных сборки, которые находятся в матрице несходства bray-curtis в R. Я смог применить ordielipse (), ordihull () и даже изменить цвета на основе групповых факторов, созданных cutree () из hclst ()
например, используя данные дюн из веганского пакета
data(dune)
Dune.dis <- vegdist(Dune, method = "bray)
Dune.mds <- metaMDS(Dune, distance = "bray", k=2)
#hierarchical cluster
clua <- hclust(Dune.dis, "average")
plot(clua, hang = -1)
# set groupings
rect.hclust(clua, 4)
grp <- cutree(clua, 4)
#plot mds
plot(Dune.mds, display = "sites", type = "text", cex = 1.5)
#show groupings
ordielipse(Dune.mds, group = grp, border =1, col ="red", lwd = 3)
или даже раскрасьте точки прямо по дереву
colvec <- c("red2", "cyan", "deeppink3", "green3")
colvec[grp]
plot(Dune.mds, display = "sites", type = "text", cex = 1.5) #or use type = "points"
points(P4.mds, col = colvec[c2], bg =colvec[c2], pch=21)
Однако что я действительно хочу сделать, так это использовать функцию SIMPROF, используя пакет "clustertsig", чтобы затем раскрасить точки на основе значимых группировок - это больше связано с техническим языком программирования - я уверен, что есть способ создать строку факторов, но я уверен, что есть более эффективный способ сделать это
Вот мой код для этого:
simp <- simprof(Dune.dis, num.expected = 1000, num.simulated = 999, method.cluster = "average", method.distance = "braycurtis", alpha = 0.05, sample.orientation = "row")
#plot dendrogram
simprof.plot(simp, plot = TRUE)
Теперь я просто не уверен, как сделать следующий шаг для построения графика nmds с использованием группировок, определенных SIMPROF - как мне сделать результат SIMPROF строкой множителя, не вводя его буквально сам?
Заранее спасибо.