R语言 NetCoMi包 Co-occurrence网络图 微生物16S 网络比较 核心物种
#自己一些问题:里面有sparcc?
#学习网站 https://github.com/stefpeschel/NetCoMi
#Github本地安装 在上面网站找到下载
#devtools::install_local("C:/Users/xxx/Documents/NetCoMi-1.0.2.tar.gz")
#加载包 安装在了R-3.6版本
library(NetCoMi)
#Control组
otu1=read.csv("L6绝对丰度filter10_Control.csv",row.names = 1,header=T)
otu1=t(otu1)
#Case组
otu2=read.csv("L6绝对丰度filter10_OSCC.csv",row.names = 1,header=T)
otu2=t(otu2)
#data=【rows are samples】, 【columns are OTUs/taxa】
net_single2 <- netConstruct(data=otu1, data2=otu2,
measure = "sparcc", # 可选:spearman spieceasi sparcc
#使用 clr 变换作为归一化方法
normMethod = "clr",
zeroMethod = "none",
sparsMethod = "threshold",adjust = "adaptBH",
#采用0.3的阈值作为稀疏化方法,只连接绝对相关性大于或等于0.3的OTU
thresh = 0.3, seed=123456,
filtTax = "none",
verbose = 3)
summary(net_single2)
#??netConstruct
#网络分析和绘图 ??netAnalyze
props_single2 <- netAnalyze(net_single2,
centrLCC = TRUE,
clustMethod = "cluster_fast_greedy",
hubPar = c("degree", "closeness","eigenvector"))
#hubPar = c("degree", "between", "closeness","eigenvector")) 也可以用其中一个筛选出核心物种
summary(props_single2)
p1=plot(props_single2,
nodeColor = "cluster",
nodeSize = "clr",
repulsion = 0.8,
rmSingles = TRUE,
#所有标签大小相等=false
labelScale = FALSE,
#改变圆圈的字体大小
cexLabels = 0.6,
#如果该值减小,则节点大小更相似
#(与cexNodes结合)对于扩大小节点同时保持大节点的大小很有用
nodeSizeSpread = 3,
#改变圆圈的大小
cexNodes = 4,
#显示圆圈里面标签的大小
shortenLabels= "none",
title1 = "Network on OTU level with spearman correlations",
showTitle = TRUE,
cexTitle = 1.5)
#加载 门信息,这个如下 主要要门水平信息
ID | genus | phyla |
Absconditabacteria_(SR1)_[G-1] | Absconditabacteria_(SR1)_[G-1] | Absconditabacteria_(SR1) |
Actinomyces | Actinomyces | Actinobacteria |
Schaalia | Schaalia | Actinobacteria |
Rothia | Rothia | Actinobacteria |
Corynebacterium | Corynebacterium | Actinobacteria |
Atopobium | Atopobium | Actinobacteria |
taxtab=read.csv("taxtab.csv",row.names = 1,header=T)
phyla <- as.factor(taxtab[, 2]) #Genus.1
phyla
names(phyla) <- taxtab[, "genus"]
phylcol <- c("blue","yellow", "orangered", "#009E73","#A2CD5A",
"peru" ,"#0072B2" ,"dodgerblue")
p2=plot(props_single2,
nodeColor = 'feature',
featVecCol = phyla,
colorVec = phylcol,
nodeSize = "clr",
repulsion = 0.8,
#所有标签大小相等=false
labelScale = TRUE,
#分组设定
layout = "spring",
sameLayout = TRUE,
layoutGroup = 1,
rmSingles = "none",#inboth两组没有才去掉
nodeFilter = "none",
nodeFilterPar = NULL,
#改变圆圈的字体大小
cexLabels = 1,
#如果该值减小,则节点大小更相似
#(与cexNodes结合)对于扩大小节点同时保持大节点的大小很有用
nodeSizeSpread = 4,
#改变圆圈的大小
cexNodes = 4,
title1 = "Network on OTU level with Pearson correlations",
showTitle = TRUE,
cexTitle = 1,
posCol = "#009900",
negCol = "#BF0000",
hubBorderCol = "red",
#使用相同的布局,则只能删除两个组中都未连接的节点。
groupNames = c("Control","OSCC")) #圈上面的分组名称
#简单图
p1=plot(props_single2,
nodeColor = "feature",
featVecCol = phyla,
colorVec = phylcol,
nodeSize = "clr",
repulsion = 0.6,
rmSingles = TRUE,
#所有标签大小相等=false
labelScale = FALSE,
#改变圆圈的字体大小
cexLabels = 0.7,
#如果该值减小,则节点大小更相似
#(与cexNodes结合)对于扩大小节点同时保持大节点的大小很有用
nodeSizeSpread = 3,
#改变圆圈的大小
cexNodes = 6,
#显示圆圈里面标签的长度
shortenLabels= "none",
title1 = "Network on OTU level with spearman correlations",
showTitle = TRUE,
posCol = "#009900",
negCol = "#BF0000",
hubBorderCol = "red",
groupNames = c("Control","OSCC"),#圈上面的分组名称
cexTitle = 1)
zoom=1 # 控制图片缩放比例
#导出的参数设置png 1000 500 1500 750
#导出的参数设置pdf 7.5 15
#检查最大节点是否是那些在矩阵中列和最高的节点,这些节点返回了标准化的计数
sort(colSums(net_single2$normCounts1), decreasing = TRUE)[1:10]
plot(2,6)
p3=legend('topleft', cex = 1, pt.cex = 1, title = "Phylum:",
legend=levels(phyla), col = phylcol, bty = "n", pch = 16)
p4=legend(2,5, cex = 1, title = "estimated correlation:",
legend = c("+","-"), lty = 1, lwd = 3, col = c("darkgreen",
"#BF0000"),
bty = "n", horiz = TRUE)
#核心节点
props_single2[["hubs"]][["hubs1"]]
props_single2[["hubs"]][["hubs2"]]
#比较网络
#第一步网络构建一样 net_single2 <- netConstruct
#第二步网络分析,参数看官网,先按他推荐的
props_season <- netAnalyze(net_single2,
centrLCC = FALSE,
avDissIgnoreInf = FALSE,
sPathNorm = FALSE,
clustMethod = "cluster_fast_greedy",
hubPar = c("degree", "closeness","eigenvector"),
hubQuant = 0.95,
lnormFit = FALSE,
normDeg = FALSE,
normBetw = FALSE,
normClose = FALSE,
normEigen = FALSE)
#??netAnalyze
summary(props_season)
#Quantitative network comparison ??netCompare
comp_season <- netCompare(props_season, permTest = TRUE, nPerm = 2,
adjust = "adaptBH" ,
seed=123456, verbose = FALSE)
#??netCompare
summary(comp_season)
summary(comp_season,
groupNames = c("Control", "OSCC"),
showCentr = c("degree", "closeness","eigenvector"),
numbNodes = 20)
props_single2[["hubs"]][["hubs1"]]
props_single2[["hubs"]][["hubs2"]]
R语言 NetCoMi包 Co-occurrence网络图 微生物16S 网络比较 核心物种相关推荐
- R语言ggraph包绘制环状网络图
ggraph 是 ggplot2 的扩展,用于绘制关系型数据结构,如网络.图和树等. ggraph 包含 3 个核心概念: layout:定义图的布局,如蜂巢图.圆堆积图等 nodes:定义节点图形属 ...
- r语言 bsda包_使用R语言creditmodel包进行Vintage分析或留存率分析
1 什么是vintage分析? Vintage分析(账龄分析法)被广泛应用于信用卡及信贷行业,这个概念起源于葡萄酒,即不同年份出产的葡萄酒的品质有差异,那么不同时期开户或者放款的资产质量也有差异,其核 ...
- 使用R语言creditmodel包进行Vintage分析或留存率分析
1 什么是vintage分析? Vintage分析(账龄分析法)被广泛应用于信用卡及信贷行业,这个概念起源于葡萄酒,即不同年份出产的葡萄酒的品质有差异,那么不同时期开户或者放款的资产质量也有差异,其核 ...
- R语言caret包构建机器学习回归模型(regression model)、使用DALEX包进行模型解释分析、特征重要度、偏依赖分析等
R语言caret包构建机器学习回归模型(regression model).使用DALEX包进行模型解释分析.特征重要度.偏依赖分析等 目录
- R语言数据包自带数据集之ISwR包的melanom数据集字段解释、数据导入实战
R语言数据包自带数据集之ISwR包的melanom数据集字段解释.数据导入实战 目录 R语言数据包自带数据集之ISwR包的melanom数据集字段解释.数据导入实战 #数据字段说明 #导入包 #导入数 ...
- R语言数据包自带数据集之survival包的colon数据集字段解释、数据导入实战
R语言数据包自带数据集之survival包的colon数据集字段解释.数据导入实战 #数据字段说明 colon数据集:B/C期结肠癌辅助化疗治疗数据 d # 患者编号 study # 所有患者都是1 ...
- R语言数据包自带数据集之survival包的lung数据集字段解释、数据导入实战
R语言数据包自带数据集之survival包的lung数据集字段解释.数据导入实战 目录 R语言数据包自带数据集之survival包的lung数据集字段解释.数据导入实战 #数据字段说明 #导入包 #导 ...
- R语言数据包自带数据集之ToothGrowth数据集字段解释、数据导入实战
R语言数据包自带数据集之ToothGrowth数据集字段解释.数据导入实战 目录 R语言数据包自带数据集之ToothGrowth数据集字段解释.数据导入实战 #数据字段说明 #导入包 #导入数据 #数 ...
- R语言数据包自带数据集之mtcars数据集字段解释、数据导入实战
R语言数据包自带数据集之mtcars数据集字段解释.数据导入实战 目录 R语言数据包自带数据集之mtcars数据集字段解释.数据导入实战 #会用帮助?或者help函数 #字段说明 #导入包 #导入数据 ...
最新文章
- 自学python要多久才能学会-怎么自学python,大概要多久?
- 设计模式之四-Factory模式
- Python语言程序设计之Python3 SMTP发送邮件
- VB 金额大小写转换(两种方法)
- JAVA订单的输入输出_Java的输入/输出操作
- 【Maps】【E都市】
- What is the difference between BTD and Q35
- Sentinel连接 Azure 活动日志中的数据
- 如何通过三视图判断立方体个数_装机小白看过来:如何通过显卡参数来判断高端低端?...
- ASP.NET的TreeView和Menu控件分别绑定siteMap和xml文件并应用母版
- win11组策略如何开启自动更新 Windows11组策略开启自动更新的设置方法
- 第九章:Servlet工作原理解析
- C++ boost multiprecision类型转换 u256转double
- 【车牌识别】基于matlab GUI BP神经网络车牌识别【含Matlab源码 669期】
- 需求与商业模式创新-需求考试复习
- mysql 复合索引 悲观锁_对MySQL索引、锁及事务的简单分析
- GEOTRANS 3.7 用户使用手册 - 区域和控件
- USACO 3.2 Magic Squares 魔板 (BFS-HASH)
- 哈工程计算机考研复试各科总分,考研复试总分是多少
- 电脑开机显示自动修复失败无法进入系统的解决方法