想要探究微生物组学,却遇到了头疼的BIOM格式?别怕,带你用biomformat包打败BIOM格式,让你的科研之路畅通无阻!






想要探究微生物组学,却遇到了头疼的BIOM格式?别怕,带你用biomformat包打败BIOM格式,让你的科研之路畅通无阻!

小果  生信果  2024-03-23 19:00:57

听说同学们在探索微生物组学领域的神秘世界时,手握着MEGAN、metagenomeSeq、MetaPhlAn 2等神奇的工具,却在.biom格式文件面前束手无策。今天,让小果带你一起揭开.biom的神秘面纱,认识一下“BIOM”——生物观测矩阵。我们将使用“biomformat”R包,轻松地将.biom格式文件转换成普通的matrix格式文件,让你在微生物组学领域的探索之旅中,能够游刃有余地操作各种神奇的数据。        
本次介绍的R包在服务器可以更加方便运行,如果没有自己的服务器欢迎联系我们使用服务器租赁~ 



公众号后台回复“111”

领取本篇代码、基因集或示例数据等文件

文件编号:240312

需要租赁服务器的小伙伴可以扫码添加小果,此外小果还提供生信分析,思路设计,文献复现等,有需要的小伙伴欢迎来撩~

1.什么是BIOM(Biological Observation Matrix)文件格式?
BIOM(Biological Observation Matrix,生物观察矩阵)是一种用于存储和共享微生物群落数据的标准格式。它提供了一种结构化的方式来表示微生物样本中存在的各种生物学实体(如微生物种类或OTUs、样本和它们之间的关系)。BIOM文件格式旨在成为表示生物样品与观察结果的统计表格的通用格式。BIOM是地球微生物组计划的一种公认标准,并且是基因组标准联盟的候选项目。请参阅BIOM格式主页(https://biom-format.org/)以获取更多详细信息。    
          
2.biomformat包
Biomformat包是一个用于与BIOM格式交互的R包。该包包括基本工具,用于读取biom格式文件,从biom对象(比单个表格更复杂)中访问和子集化数据表,以及有限的支持将biom对象写回到biom格式文件。
安装biomformat包
需求R语言版本4.3+,控制台输入以下代码。
if (!require("BiocManager", quietly = TRUE))    install.packages("BiocManager")# 判断是否已经安装biomformat包BiocManager::install("biomformat")# 安装biomformat包,用于与BIOM格式交互输入library(biomformat) # 载入biomformat包    packageVersion("biomformat") # 查看biomformat包版本显示如图所示版本号表示安装成功
          
3.biomforamt包使用示例
读取BIOM格式文件
本文采用biomforamt包提供的示例文件进行演示
rich_sparse_file = system.file("extdata", "rich_sparse_otu_table.biom", package = "biomformat")x1 = read_biom(rich_sparse_file) #将示例文件存入变量x1x1 #显示x1文件类型
显示如图,则成功读取BIOM格式文件并存储到变量x1中。         
输出BIOM文件内容
biom_data(x1)
显示如下图所示稀疏矩阵,表示物种在样本中的计数。
observation_metadata(x1)
显示物种分析信息
sample_metadata(x1)
显示其他属性信息
.biom格式文件转换    
在 R 中,大多数包会自动识别x1类型格式文件。但是,如果你要使用的 R 函数无法识别x1的数据类型,你可以使用 as 函数将数据轻松转换为简单、标准的 “matrix” 类别。
class(x1) #查看x1数据类型x2 <-  as(biom_data(x1), "matrix") # 格式转换x2 # 查看x2内容class(x2) # 查看x2数据类型
显示如图:
    
Biomformat做图
plot(biom_data(x1)) # 点图        
上图即为示例数据表示的稀疏矩阵,对应样本中包含的物种数字点图分布。横坐标(1-5)表示样本1,依次类推,共6个样本。有图可直观看出,样本中所含物种数较少,数据较为集中在0和1之上。
boxplot(as(biom_data(x1), "vector"), col = c("skyblue", "lightgreen"), pch = c(16, 18), xlab = "Group", ylab = "Values", main = "Boxplot of biomformat", width = 0.5, border = c("black", "black"), notch = TRUE, varwidth = TRUE) # 箱线图
   
上图箱线图比点图更加直观,箱体集中在0到1之间,之后个别数值能够达到3至5,更加表明原始矩阵较为稀疏。
heatmap(as(biom_data(x4), "matrix")) # 热力图
以上为热力图结果,可知图像整体色调饱和度较低,数值均值较小,个别突出数值颜色较深,对用结果可以从横纵坐标看出,图像清晰展示了样本与物种之间的关系。    
          
以上就是关于BIOM和biomformat包的介绍了,代码可以说是非常简洁,但是输出结果以及代码中的参数其实有很多地方需要注意,同学们要多加练习,通过对BIOM 和 biomformat 包的学习,可以提升同学们对生物信息学数据处理的能力,使同学们能够更好地理解和分析微生物组学数据。         
同学们如果觉得写代码麻烦可以体验我们的云生信小工具,同学们只需输入数据,即可轻松生成所需图表。立即访问云生信(http://www.biocloudservice.com/home.html),开启便捷的生信之旅! 

小果还提供思路设计、定制生信分析、文献思路复现;有需要的小伙伴欢迎直接扫码咨询小果,竭诚为您的科研助力!


定制生信分析

服务器租赁

扫码咨询小果


往期回顾

01

1024G存储的生信服务器,两人成团,1人免单!

02

单个数据库用腻了?多数据库“组合拳”带你打开免疫浸润新思路!

03

孟德尔随机化的准备工作,GWAS数据的网站下载方法

04

跟着小果学复现-手把手带你拿下IF=46.9Nature 级别的主成分分析(PCA)图!!