相関(cooccurrence/corellation)に基づく計算(SparCC etc... )と共分散(Covariance)に基づくもの(SpiecEasi etc...)がある
相関に基づく
相関に基づく計算では、超複雑なネットワークとなるため、簡素化(Rarefy)することにより、関係把握が容易になる
SpiecEasi(Kurtz et al 2019)
"0"が過多なデータ(zero-infrated data)に適した方法がある
MAGMA (Cougoul et al 2019)
:Sparse Cooccurrence Network Investigation for Compositional Data [相関(correlation/Cooccurrence)に基づく])(Shaffer et al. 2020)
*Single-Cell rEgulatory Network Inference and Clusteringとは別物Qiime2用の共起ネットワーク分析ツールのモジュール、q2-SCNICで使用可能
仮定条件
①ASV(OTU)多様性が高い ②真の相関ネットワークは疎である
対数変換したASV間の分散を用いて真のASV分散を概算
サンプル毎のリード数を、サブサンプリングにより正規化(希薄化)
SparCC(Friedman and Alm 2015)でCompositional data(組成データ)の相関係数を計算
ref. : SCNIC解説(日本語)
Compositional dataの解説(日本語): (Ohta and Arai 2006)
ノード
エッジ
その他
ref.: https://github.com/shafferm/SCNIC
condaコマンドの使い方
ref.: https://qiita.com/yasushi-jp/items/7ce0975db7a7e9ac7991
condaの全てのパッケージをupdateしておく
% conda update --all
仮想環境一覧を表示
% conda info -e
q2-SCNICには2つある?
shafferm/ : 古い?
ref.: https://github.com/shafferm/q2-SCNIC/blob/master/community_tutorial.md
lozuponelab/q2-SCNIC(shafferm/q2-SCNICの分家)
ref.: https://github.com/lozuponelab/q2-SCNIC
SCNICをinstall
fastsparとparallelをインストールしておくとよい?
% conda install -c bioconda -c conda-forge fastspar #(長い...)
新しくSCNIC環境の構築
% conda create -n SCNIC phyton=3 scnic
←エラー PackagesNotFoundError: not available from current channels: -scnic
% pip install scnic # → OK
プラグイン, q2-SCNIC,をインストール
% pip install git+https://github.com/lozuponelab/q2-SCNIC.git
% qiime dev refresh-cache #Qiime2のリフレッシュ
確認
% qiime SCNIC --help
QIIME2とRの関係は以下のHPがわかりやすい
https://qiita.com/xvtyzn/items/6a008b61d852dcbaed57
RにQIIME2パッケージをインストールする(GitHub)
https://github.com/jbisanz/qiime2R/blob/master/README.md
xfun package(Encoder?)が必要なら予めインストールしておく
igraph packageはgfortranと依存関係がある。OS依存のインストーラーをDLし、予めインストールしておく
R% if (!requireNamespace("devtools", quietly = TRUE)){install.packages("devtools")}
R% devtools::install_github("jbisanz/qiime2R")
.qzaファイルを可視化するには、.qza → .biom → .tsvへと変換する
.qza → .biom
% qiime tools export
--input-path [FILE.qza]
--output-path [DIR]
.biom → .tsv
% biom convert
-i [FILE.biom]
-o [FILE.txv]
--to-tsv
% qiime cutadapt trim-paired
--i-demultiplexed-sequences [.qza]
--p-front-f XXXXXXXXXXXXX
--p-front-r XXXXXXXXXXXXX
--o-trimed-sequences [.qza]
----------//
ref. https://docs.qiime2.org/2020.2/tutorials/filtering/
☞ table.qzaから、特定のsample (Library)、もしくはfeature (ASV)を操作(除去・結合)する
filter-samples ... 抽出する"sample"の.tsvに基づく
filter-features ... 抽出する"feature"の.tsvに基づく
% qiime feature-table filter-features
--m-metadata-file asv-select.tsv
--i-table table.qza
--o-filtered-table table_filtered.qza
asv-select.tsv ... 1行目に列名を含むASV名のリスト(列名は何でも良い)
例)feature id (feature-id, featureid, id, etc...)
84b789f3932b5283990866d38bfcb05e566c703dfd460566e7a44428e009da52961091ff42243d719d2c30494079ffcc...ネットワーク表示ソフトが必要: Cytoscape, Gephi, igraph (in R) etc...
Cytoscapeは公式HPからインストーラーをDLする(URL: www.cytoscape.org)
Gephi 0.9.2 on Linux [unconpatible on java 8 vs 11], Mac
データ:.qza形式のtable
相関係数の計算
全ASVのペアワイズ 相関係数を計算(SparCC法)
% qiime SCNIC calculate-correlations
--i-table [FILE.qza]
--p-method sparcc
--o-correlation-table [FILE:correls.qza]
相関があるASV間のネットワーク(モジュール)のクラスタリング
% qiime SCNIC make-modules-on-correlations
--i-correlation-table correls.qza
--i-feature-table table.qza
--p-min-r .35
--o-collapsed-table collapsed.qza \
--o-correlation-network net.modules.qza \
--o-module-membership membership.qza
ネットワークの可視化
% mkdir [DIR:Extr]
% qiime tools extract
--input-path net.modules.qza
--output-path [DIR:Extr]
Gephiで可視化する(ver 0.9.2)
☞ [DIR:Extr]内に作成された[network.gml]を開く
Gephi-0.9.2
ref. (英語) : https://gephi.org
ref.(日本語): http://oss.infoscience.co.jp/gephi/gephi.org/index.html
クイックスタート ☞ http://oss.infoscience.co.jp/gephi/gephi.org/users/quick-start.1.html
ユーザー向け ☞ http://oss.infoscience.co.jp/gephi/gephi.org/users/index.html
Windows, Mac, Linuxで使用できるJava JREソフト
スタート方法
% ./bin/gephi
☞ java8が正式サポート → java 11もサポートされた(2021.12)
☞ javaの切り替え
% sudo update-alternatives --config java
% sudo update-alternatives --auto java
使い方リンク☞
https://kateto.net/wp-content/uploads/2016/04/Gephi%20Handout%20Sunbelt%202016.pdf
ref. 疫学とR(phyloseqのデータ作成)
ref. GitHub
ref. Phyloseq tutorial (Vaulot's GitHub)
ref. Rで学ぶデータサイエンス8(ネットワーク解析)