暗能星系

    • 登录
    • 搜索

    基于qiime2的扩增子数据分析

    微生物组分析
    1
    23
    61
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • A
      anneng 最后由 anneng 编辑

      一,导入数据
      我们当前交付的illumina的数据都是双端且拆分过的 枚举值默认选择双端类型
      暴露参数:
      input-path:数据文件夹
      type:类别 枚举型 默认值SampleData[PairedEndSequencesWithQuality]
      input-format:格式 枚举型 默认值 CasavaOneEightSingleLanePerSampleDirFmt

      参考:
      https://igor.sbgenomics.com/public/apps/admin/sbg-public-data/qiime2-16s-rrna-metagenomic-profiling
      ef864964-38b5-4ba4-8025-a58d24935dc3-image.png

      qiime tools import \
        --type 'SampleData[PairedEndSequencesWithQuality]' \
        --input-path casava-18-paired-end-demultiplexed \
        --input-format CasavaOneEightSingleLanePerSampleDirFmt \
        --output-path demux-paired-end.qza
      

      2.拆分(当前先不支持)
      导入数据时 虽然大部分情况都已经拆分 如果没有拆分的数据 我们需要在文件上传的过程中增加一个拆分功能 让用户上传文件 并且附上 一个表格 表格里面包括样本编号和barcode列表 和qiime2类似

      qiime demux emp-single \
        --i-seqs emp-single-end-sequences.qza \
        --m-barcodes-file sample-metadata.tsv \
        --m-barcodes-column barcode-sequence \
        --o-per-sample-sequences demux.qza \
        --o-error-correction-details demux-details.qza
      

      拆分的软件对于illumina的数据 可以使用bcl2fastq 需要原始数据和samplesheet
      https://support.illumina.com/content/dam/illumina-support/documents/documentation/software_documentation/bcl2fastq/bcl2fastq2-v2-20-software-guide-15051736-03.pdf

      1 条回复 最后回复 回复 引用 0
      • A
        anneng 最后由 编辑

        https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-020-03591-6
        DADA2 Deblur CD-HIT-OTU-Miseq的对比:
        Deblur 只能支持单端 必须进行R1、R2的合并
        DADA2 内部本身就会合并

        https://github.com/ydkondratenko/cdsnake
        http://weizhong-lab.ucsd.edu/cd-hit-otu/

        https://www.biorxiv.org/content/10.1101/153783v1.full
        CD-HIT-OTU-MiSeq, an Improved Approach for Clustering and Analyzing Paired End MiSeq 16S rRNA Sequences
        70036dd0-6a9f-40ef-b20d-27483f736fc4-image.png

        1 条回复 最后回复 回复 引用 0
        • A
          anneng 最后由 anneng 编辑

          NIHMS782534-supplement-1.pdf
          f58dd7ce-2d0a-4c3b-95c8-976abdb2b8f0-image.png
          为了排除测序误差 OTU采用聚类的方式(97%相似度) 但是也会把真正的突变给排除掉
          DADA2 R package implements the full amplicon workflow: filtering, dereplication, chimera identification, and merging paired-end reads.
          DADA2 本身是个流程 做了很多事情 其中有一个就是把R1、R2做了合并。

          1 条回复 最后回复 回复 引用 0
          • A
            anneng 最后由 编辑

            https://edu.omicslogic.com/blog/16s-rna-amplicon-data-analysis-dada2-on-t-bioinfoserver?utm_campaign=T-Bio Info Server&utm_content=212683594&utm_medium=social&utm_source=linkedin&hss_channel=lcp-27253342
            3c0844f9-8f04-4943-a2b8-532b3f73e4f3-image.png

            1 条回复 最后回复 回复 引用 0
            • A
              anneng 最后由 编辑

              python -m pdb /home/jynlix/miniconda3/envs/qiime2-2022.2/bin/qiime diversity alpha-group-significance --i-alpha-diversity ace.qza --m-metadata-file metadata2.tsv --o-visualization alpha.ace.qzv --verbose

              qiime2代码调试
              1.要使用全路径
              2.要加上--verbose 否则pdb的打印也会被重定向
              3.然后可以使用“文件名:行号”打断点
              b /home/jynlix/miniconda3/envs/qiime2-2022.2/lib/python3.8/site-packages/q2_diversity/_alpha/_visualizer.py:35

              1 条回复 最后回复 回复 引用 0
              • A
                anneng 最后由 编辑

                https://hackmd.io/@MAE-MBL/HylpoaOF5 qiime2的一个帖子 讲的比较好

                1 条回复 最后回复 回复 引用 0
                • A
                  anneng 最后由 编辑

                  https://www.youtube.com/watch?v=g5BdGP4V5YA
                  关于rarefy的解释

                  1 条回复 最后回复 回复 引用 0
                  • A
                    anneng 最后由 编辑

                    https://forum.qiime2.org/t/whats-the-difference-between-and-g-in-greengene-database/17615

                    S__ 和__的区别

                    1 条回复 最后回复 回复 引用 0
                    • A
                      anneng 最后由 编辑

                      https://bioinformaticsworkbook.org/dataAnalysis/Metagenomics/Qiime2.html#gsc.tab=0

                      1 条回复 最后回复 回复 引用 0
                      • A
                        anneng 最后由 编辑

                        https://www.biorxiv.org/content/10.1101/2021.09.15.460495v2.full.pdf
                        Tourmaline: a containerized workflow for rapid and
                        iterable amplicon sequence analysis using QIIME 2
                        and Snakemake
                        使用snakemake对qiime2做了自动化

                        1 条回复 最后回复 回复 引用 0
                        • A
                          anneng 最后由 anneng 编辑

                          https://colab.research.google.com/github/Gibbons-Lab/isb_course_2020/blob/master/16S.ipynb#scrollTo=h3NALJ7u6mBP

                          使用Colab来运行Qiime2
                          ca7766ac-8224-4e29-a739-484290c0e7a1-image.png

                          4166d0cf-56e2-4ab9-bcba-a8011754855f-image.png

                          5f4a99a7-e403-44b1-afb4-6de5d7509358-image.png

                          1 条回复 最后回复 回复 引用 0
                          • A
                            anneng 最后由 编辑

                            对于__的问题:
                            qiime的图上会有__;__这种注释
                            4a67e350-a9b9-4b3c-840a-1da8075f37ae-image.png

                            经过查询:
                            850ca6bc-9ad2-479c-a188-fe5693299d7a-image.png
                            数据里面是
                            k__Bacteria; p__Proteobacteria; c__Betaproteobacteria; o__Burkholderiales 这种级别不够的注释
                            对于级别不够的情况 qiime view 会用__补齐

                            但是注意,s__ p__这种情况数据也是有的 如果需要过滤 可以用
                            qiime taxa filter-table --p-exclude "s__"过滤

                            1 条回复 最后回复 回复 引用 0
                            • A
                              anneng 最后由 编辑

                              https://www.drive5.com/usearch/manual/qiime_classic.html
                              OTU 表中的数字代表reads数

                              1 条回复 最后回复 回复 引用 0
                              • A
                                anneng 最后由 编辑

                                DADA2的限制
                                33724111-06e2-45c5-aa3e-2cbc189b42fb-image.png
                                DADA2对于单体序列 无法识别

                                1 条回复 最后回复 回复 引用 0
                                • A
                                  anneng 最后由 编辑

                                  https://github.com/benjjneb/dada2/issues/1095
                                  dereplication (derepFastq) required?
                                  dada2在处理的时候 可以去重 只是为了降低内存消耗?在最后统计丰度的时候 会把重复再计算回来?

                                  1 条回复 最后回复 回复 引用 0
                                  • A
                                    anneng 最后由 编辑

                                    dyn.load("./src/dada2.so")
                                    Error in dyn.load("./src/dada2.so") :
                                    unable to load shared object '/home/jynlix/Downloads/src/dada2/dada2/./src/dada2.so':
                                    /home/jynlix/Downloads/src/dada2/dada2/./src/dada2.so: undefined symbol: _ZTIN3tbb4taskE

                                    使用gdb 调试dada2时报错 dada2依赖 Rcpp 做多线程 Rcpp 依赖 tbb 需要提前把这个包加载

                                    dyn.load("/home/jynlix/R/x86_64-pc-linux-gnu-library/4.1/RcppParallel/lib/libtbb.so.2", local = FALSE)

                                    1 条回复 最后回复 回复 引用 0
                                    • A
                                      anneng 最后由 编辑

                                      https://btep.ccr.cancer.gov/docs/qiime2/index.html
                                      Microbiome Analysis with QIIME2 教程

                                      1 条回复 最后回复 回复 引用 0
                                      • A
                                        anneng 最后由 编辑

                                        dada2的执行过程:
                                        filterAndTrim 过滤,截取
                                        derepFastq (可选步骤 dada内部会判断 如果没有经过去重 会自己调用这个函数)
                                        learnErrors 这个函数也会调用dada 以 self-consist mode 模式运行
                                        dada 核心步骤 但是 self-consist mode = FALSE

                                        1 条回复 最后回复 回复 引用 0
                                        • A
                                          anneng 最后由 anneng 编辑

                                          https://forum.qiime2.org/t/difference-between-sub-sampling-and-rarefing/18219

                                          sub-sampling and rarefing的对比:
                                          5688a244-9fd7-4071-a031-d2e8a6629c73-image.png 25b2f752-278b-41d6-aa58-cfcc0f403be6-image.png

                                          c96b2b7f-7c63-456b-9890-72071f25e5b4-image.png

                                          sub-sampling可以从sample或者feature的角度 对数据进行过滤 得到的是整个数据的子集。
                                          rarefy是对所有feature的结果进行归一化。

                                          1 条回复 最后回复 回复 引用 0
                                          • A
                                            anneng 最后由 编辑

                                            假如data2的代码保存在 /root/data2
                                            cd /root
                                            R CMD build dada2
                                            会生成dada2.so

                                            1 条回复 最后回复 回复 引用 0
                                            • First post
                                              Last post
                                            Powered by 暗能星系