前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FastSpar | 用更快的 SparCC 进行微生物组相关性分析

FastSpar | 用更快的 SparCC 进行微生物组相关性分析

作者头像
生信菜鸟团
发布2020-10-23 11:36:30
4.9K0
发布2020-10-23 11:36:30
举报

对于 OTU 矩阵这样稀疏的组成数据,我们往往会用专门的统计方法来计算其相关性,进行网络分析,一般最常用的就是 SparCC,但其性能限制了高维数据集交互网络的计算。FastSparSparCC 算法的基础上进行改进,用 C++ 将算法重写,使其更为高效且支持并行运算。与 SparCC 相比,FastSpar 的运算结果几乎相同,同时可将计算时间减少 2-3 个数量级,并且占用内存更少。

GitHub 地址:https://github.com/scwatts/FastSpar

软件安装

FastSpar 可以通过预编译的二进制文件,Bioconda 或从源代码安装。

GNU/Linux

对于大多数 64 位 linux 发行版(例如 Ubuntu,Debian,RedHat 等),使用 FastSpar最简单方法就是直接下载二进制文件。

Bioconda

conda install -c bioconda -c conda-forge fastspar

从源码编译

依赖:

C++11 (gcc-4.9.0+, clang-4.9.0+, etc)OpenMP 4.0+GfortranArmadillo 6.7+LAPACKBLAS (OpenBLAS is recommended)GNU Scientific Library 2.1+GNU getoptGNU makeGNU autoconfGNU autoconf-archiveGNU m4

下载 FastSpar 源码并安装:

git clone https://github.com/scwatts/fastspar.gitcd fastspar./autogen.sh./configure --prefix=/usr/makemake install

使用方法

相关性分析

输入 OTU count 矩阵,计算相关性矩阵:

fastspar --otu_table tests/data/fake_data.tsv --correlation median_correlation.tsv --covariance median_covariance.tsv

也可以调整迭代次数和排除迭代次数(排除高度相关 OTU 的次数):

fastspar --iterations 50 --exclude_iterations 20 --otu_table tests/data/fake_data.tsv --correlation median_correlation.tsv --covariance median_covariance.tsv

此外,还可以增加排除相关 OTU 的最小阈值:

fastspar --threshold 0.2 --otu_table tests/data/fake_data.tsv --correlation median_correlation.tsv --covariance median_covariance.tsv

计算 P 值

有几种方法可以为相关性计算 P 值。这里选择使用基于 bootstrap 的方法。首先获得随机替换的数据集,再通过这些随机数据计算 P 值,在下面的示例中,我们根据 1000 个随机数据集来计算 P 值。

首先,生成 1000 个随机矩阵:

mkdir bootstrap_countsfastspar_bootstrap --otu_table tests/data/fake_data.tsv --number 1000 --prefix bootstrap_counts/fake_data

然后计算每个矩阵的相关性(并行计算):

mkdir bootstrap_correlationparallel fastspar --otu_table {} --correlation bootstrap_correlation/cor_{/} --covariance bootstrap_correlation/cov_{/} -i 5 ::: bootstrap_counts/*

根据这些相关性,可计算出 P 值:

fastspar_pvalues --otu_table tests/data/fake_data.tsv --correlation median_correlation.tsv --prefix bootstrap_correlation/cor_fake_data_ --permutations 1000 --outfile pvalues.tsv

若使用 OpenMP 编译 FastSpar,则可直接通过参数 --threads <thread_number> 并行运算:

fastspar --otu_table tests/data/fake_data.txt --correlation median_correlation.tsv --covariance median_covariance.tsv --iterations 50 --threads 10

友情推荐:

生信技能树官方举办的学习班:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信菜鸟团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 软件安装
    • GNU/Linux
      • Bioconda
        • 从源码编译
        • 使用方法
          • 相关性分析
            • 计算 P 值
            相关产品与服务
            云直播
            云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档