【R语言】使用DESeq2对微生物组进行差异分析

代码展示:

bash 复制代码
asv <- read.delim(paste0(input,'_0.5wen.10050.asv_table.txt'), row.names = 1, sep = '\t', stringsAsFactors = FALSE, check.names = FALSE)
group <- read.delim(paste0('group2_',input,'.txt'),row.names = 1,sep = '\t') 

asv <- asv+1
#将变量转换为因子型
group$group1 <- as.factor(group$group1)

dds <- DESeqDataSetFromMatrix(countData = asv,
                              colData = group,
                              design = ~group1)#构建 DESeqDataSet 对象
dim(dds)

##过滤
#dds <- dds[rowSums(counts(dds)) > 1,]

## 差异比较
#dds <- DESeq(dds) #差异分析dds <- DESeq(dds) #asv差异分析

dep <- DESeq(dds)
res <- results(dep)
suppressMessages(dds)

diff = res
diff <- na.omit(diff)  ## 去除缺失值NA
dim(diff)
#此时,diff就是差异分析的总分析结果,我们可以先将其导出保存
write.csv(diff,paste0(input,'_all_diff.csv'))

##进一步筛选差异ASV,使用Padj值和log2FC进行筛选
#Padj是P值矫正之后的数值,一般选取小于等于0.05(显著差异)的基因;同时log2FC是基因表达量的差异倍数。
#例如log2FC为1,证明这个基因在两种不同处理中的表达量相差了一倍,通常以大于1或小于-1为标准,大于1的为上调表达,少于-1的为下调表达。
foldChange = 1
padj = 0.05

diffsig <- diff[(diff$pvalue < padj & abs(diff$log2FoldChange) > foldChange),]
dim(diffsig)

write.csv(diffsig, paste0(input,'_all_diff.sig.csv'))

参考:

1\][DESeq2筛选差异OTU及绘制火山图](https://blog.csdn.net/qq_42458954/article/details/104078845) \[2\][RStudio \| 利用DESeq2包进行差异表达分析](https://zhuanlan.zhihu.com/p/521515842) \[3\][NC:基于38组数据评估14种微生物组差异分析方法---结果差异很大](https://blog.csdn.net/woodcorpse/article/details/125157755)

相关推荐
wan5555cn3 小时前
多张图片生成视频模型技术深度解析
人工智能·笔记·深度学习·算法·音视频
雁于飞5 小时前
vscode中使用git、githup的基操
笔记·git·vscode·学习·elasticsearch·gitee·github
rannn_1115 小时前
【Javaweb学习|实训总结|Week1】html基础,CSS(选择器、常用样式、盒子模型、弹性盒布局、CSS定位、动画),js(基本类型、运算符典例)
css·笔记·学习·html
Ro Jace5 小时前
心灵笔记:第一性原理学习与实践
笔记
aramae6 小时前
C++ -- 模板
开发语言·c++·笔记·其他
小马学嵌入式~7 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
hour_go7 小时前
用户态与内核态的深度解析:安全、效率与优化之道
笔记·操作系统
摇滚侠9 小时前
Vue3入门到实战,最新版vue3+TypeScript前端开发教程,笔记03
javascript·笔记·typescript
岑梓铭10 小时前
考研408《计算机组成原理》复习笔记,第六章(1)——总线概念
笔记·考研·408·计算机组成原理·计组
Suckerbin10 小时前
digitalworld.local: TORMENT
笔记·安全·web安全·网络安全