Microbiome 2017 5:27を読んだ。存在度のnormalizationの方法がβ-diversityの結果と、発現度の比較手法が結果に与える影響について詳細に書いている。勉強になります。
16S rRNAを用いた解析では、相対的存在度を用いる。なぜならリード数からは実際の絶対存在度は計算できないからだ。相対的存在度を算出する時に、単純なproportionをとるのでなく他の方法を採用する場合があり、それが結果に与える影響を調べている。また研究では(大体において)2群以上の群間で存在度を比較するのだが、その検定方法についても比較している。
さてまずnormalizationの方法比較だが、どのようにvalidateするのか。本論文ではordination analysisが生物学的もしくは人工的に作られた特徴を表現出来ているかを確かめることをvalidateの方法としている。以下が行ったnormalizationの方法。
- 何もしない場合
- Proportionをとる場合
- Rarefyする場合
- Log upper quartileをとる場合
- Cummulative sum scalingをとる場合
- DESeqVSを利用する場合
- edgeR-TMMを利用する場合
Rarefyingは前に読んだペーパーで「絶対にやるな」的な強い言葉が書かれていたが、このペーパーでは重要な手法の一つであるとしている。結果として、DESeqVSはweighted UniFrac以外(Unweightedや、jaccard)を利用した場合にはうまくいかなかったとのこと。他の手法においてはライブラリサイズ(特に1000seq/sample以下において)が結果の重要な交絡だった。
発現度の比較(DEA)には、以下が比較されていた。
用いるのはシミュレーションデータセットと、リアルデータである。
- Wilcoxon rank-sum 検定
- DESeq
- DESeq2
- edgeR
- Voom
- metagenomeSeq
- ANCOM
DESeq2と、metagenomeSeqは確かQIIME(1)に実装されていて使えたはず。
この内で、シミュレーションデータは結局そのデータのデザインや分布によって結果が左右されてしまうので、real datasetの複雑な特徴を表しきれない。このような評価を行う際のgold-standardを設定する必要があるという結論だった。DESeq2は小サンプルでは感度が良かったが、偏ったライブラリサイズの際にFDRが増加した。
この中では「FDRがどのサンプルサイズでも少なかった」という観点から、ANCOMが最も良かったとのこと。ANCOMはここからRライブラリをダウンロードできるが、scikit-bioに既にimplementされているのでそちらが楽である。
pandasのDataFrameとgroupを指定したSeriesを渡すことで計算出来るが、その際ゼロを含んだ(16S rRNAで算出されたOTU tableにはゼロが含まれがち)DFを渡すとエラーが返される。そのためmultiplicative_replacementで合計が1になるような微小な値を足しておく必要がある。このpseudocountにも「追加する値により結果が変わる」や「どうせ他にいい方法がないんだからpseudocount入れるしかないだろう」など色々な議論があるそう。難しい。。
とはいえ、(現時点)ANCOMを用いて検定比較している論文があまり見つからない。