R语言操作n
1.加载安装vegan包
2.查看data(varechem)和data(varespec),探索其维度和结构
3.基于varespec构建物种互作网络,输出gml文件并采用gephi可视化为图片,输出pdf,阈值为r>0.6,p<0.05
4.基于varespec和varechem构建物种-环境互作网络,输出gml文件并采用gephi可视化为图片,输出pdf,阔值为r>0.6,p<0.05
# 1
install.packages("vegan")
library(vegan)# 2
data(varechem)
data(varespec)
dim(varechem)
dim(varespec)
str(varechem)
str(varespec)# 3
install.packages(c("Hmisc", "igraph"))
library(Hmisc)
library(igraph)
cor_spec <- rcorr(as.matrix(varespec), type = "pearson")
species <- colnames(varespec)
edges <- data.frame()
for (i in 1:(ncol(varespec)-1)) {for (j in (i+1):ncol(varespec)) {r_val <- cor_spec$r[i, j]p_val <- cor_spec$P[i, j]if (abs(r_val) > 0.6 && p_val < 0.05) {edges <- rbind(edges, data.frame(from = species[i], to = species[j]))}}
}
g <- graph_from_data_frame(edges, directed = FALSE)
write_graph(g, "species_network.gml", format = "gml")# 4
library(psych)
cor_env_spec <- corr.test(varespec, varechem, method = "pearson", adjust = "none")
edges_env <- data.frame()
env_vars <- colnames(varechem)
for (i in 1:ncol(varespec)) {for (j in 1:ncol(varechem)) {r_val <- cor_env_spec$r[i, j]p_val <- cor_env_spec$p[i, j]if (abs(r_val) > 0.6 && p_val < 0.05) {edges_env <- rbind(edges_env, data.frame(from = species[i], to = env_vars[j]))}}
}
nodes_env <- data.frame(name = c(species, env_vars),type = c(rep("species", length(species)),rep("environment", length(env_vars))))
g_env <- graph_from_data_frame(edges_env, directed = FALSE, vertices = nodes_env)
write_graph(g_env, "species_env_network.gml", format = "gml")
gephi安装网址