<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>BioF3 博客</title>
        <link>https://biof3.com/blog</link>
        <description>生物信息学数据分析经验分享</description>
        <lastBuildDate>Mon, 06 May 2024 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>zh-Hans</language>
        <item>
            <title><![CDATA[欢迎来到 BioF3！]]></title>
            <link>https://biof3.com/blog/welcome-to-biof3</link>
            <guid>https://biof3.com/blog/welcome-to-biof3</guid>
            <pubDate>Mon, 06 May 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[欢迎来到 BioF3 组学数据分析实践教程！]]></description>
            <content:encoded><![CDATA[<p>欢迎来到 BioF3 组学数据分析实践教程！</p>
<p>我们很高兴能够为中文用户提供一个系统化、实践导向的生物组学数据分析学习平台。</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="关于-biof3">关于 BioF3<a href="https://biof3.com/blog/welcome-to-biof3#%E5%85%B3%E4%BA%8E-biof3" class="hash-link" aria-label="关于 BioF3的直接链接" title="关于 BioF3的直接链接" translate="no">​</a></h2>
<p><strong>BioF3 = Bio + F3</strong></p>
<ul>
<li class=""><strong>Bio</strong>: 生物信息学 (Bioinformatics)</li>
<li class=""><strong>F3</strong>: 代表我们的团队标识和技术理念</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="我们的目标">我们的目标<a href="https://biof3.com/blog/welcome-to-biof3#%E6%88%91%E4%BB%AC%E7%9A%84%E7%9B%AE%E6%A0%87" class="hash-link" aria-label="我们的目标的直接链接" title="我们的目标的直接链接" translate="no">​</a></h2>
<p>BioF3 致力于：</p>
<ol>
<li class=""><strong>降低学习门槛</strong>：用中文提供清晰易懂的教程</li>
<li class=""><strong>注重实践</strong>：提供可运行的代码和真实案例</li>
<li class=""><strong>系统化学习</strong>：从基础到进阶的完整学习路径</li>
<li class=""><strong>持续更新</strong>：紧跟领域最新发展</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="内容规划">内容规划<a href="https://biof3.com/blog/welcome-to-biof3#%E5%86%85%E5%AE%B9%E8%A7%84%E5%88%92" class="hash-link" aria-label="内容规划的直接链接" title="内容规划的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="已发布内容">已发布内容<a href="https://biof3.com/blog/welcome-to-biof3#%E5%B7%B2%E5%8F%91%E5%B8%83%E5%86%85%E5%AE%B9" class="hash-link" aria-label="已发布内容的直接链接" title="已发布内容的直接链接" translate="no">​</a></h3>
<ul>
<li class="">✅ 基础教程：生物信息学概述、编程基础</li>
<li class="">✅ 单细胞实践教程：模块01-12</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="后续规划">后续规划<a href="https://biof3.com/blog/welcome-to-biof3#%E5%90%8E%E7%BB%AD%E8%A7%84%E5%88%92" class="hash-link" aria-label="后续规划的直接链接" title="后续规划的直接链接" translate="no">​</a></h3>
<ul>
<li class="">🔜 基因组学分析教程</li>
<li class="">🔜 bulk RNA-seq 分析</li>
<li class="">🔜 表观组学分析</li>
<li class="">🔜 多组学整合分析</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="如何使用本站">如何使用本站<a href="https://biof3.com/blog/welcome-to-biof3#%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E6%9C%AC%E7%AB%99" class="hash-link" aria-label="如何使用本站的直接链接" title="如何使用本站的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-从基础开始">1. 从基础开始<a href="https://biof3.com/blog/welcome-to-biof3#1-%E4%BB%8E%E5%9F%BA%E7%A1%80%E5%BC%80%E5%A7%8B" class="hash-link" aria-label="1. 从基础开始的直接链接" title="1. 从基础开始的直接链接" translate="no">​</a></h3>
<p>如果你是初学者，建议从<a class="" href="https://biof3.com/docs/basics/overview">基础教程</a>开始：</p>
<ul>
<li class="">了解生物信息学基本概念</li>
<li class="">学习必要的编程基础</li>
<li class="">熟悉常用工具和环境</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-选择感兴趣的领域">2. 选择感兴趣的领域<a href="https://biof3.com/blog/welcome-to-biof3#2-%E9%80%89%E6%8B%A9%E6%84%9F%E5%85%B4%E8%B6%A3%E7%9A%84%E9%A2%86%E5%9F%9F" class="hash-link" aria-label="2. 选择感兴趣的领域的直接链接" title="2. 选择感兴趣的领域的直接链接" translate="no">​</a></h3>
<p>根据你的研究方向，选择相应的教程：</p>
<ul>
<li class=""><a class="" href="https://biof3.com/docs/modules/module01">单细胞转录组分析</a></li>
<li class="">基因组学分析</li>
<li class="">其他组学分析</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-动手实践">3. 动手实践<a href="https://biof3.com/blog/welcome-to-biof3#3-%E5%8A%A8%E6%89%8B%E5%AE%9E%E8%B7%B5" class="hash-link" aria-label="3. 动手实践的直接链接" title="3. 动手实践的直接链接" translate="no">​</a></h3>
<p>每个教程都包含：</p>
<ul>
<li class="">详细的代码示例</li>
<li class="">真实的数据案例</li>
<li class="">可运行的分析流程</li>
<li class="">结果解读指导</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-参与讨论">4. 参与讨论<a href="https://biof3.com/blog/welcome-to-biof3#4-%E5%8F%82%E4%B8%8E%E8%AE%A8%E8%AE%BA" class="hash-link" aria-label="4. 参与讨论的直接链接" title="4. 参与讨论的直接链接" translate="no">​</a></h3>
<p>遇到问题或有想法？</p>
<ul>
<li class=""><a href="https://github.com/ShengXinF3/BioF3/discussions" target="_blank" rel="noopener noreferrer" class="">GitHub Discussions</a></li>
<li class=""><a href="https://github.com/ShengXinF3/BioF3/issues" target="_blank" rel="noopener noreferrer" class="">提交 Issue</a></li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="博客内容">博客内容<a href="https://biof3.com/blog/welcome-to-biof3#%E5%8D%9A%E5%AE%A2%E5%86%85%E5%AE%B9" class="hash-link" aria-label="博客内容的直接链接" title="博客内容的直接链接" translate="no">​</a></h2>
<p>在这个博客中，我们会分享：</p>
<ul>
<li class=""><strong>教程更新</strong>：新教程发布通知</li>
<li class=""><strong>经验技巧</strong>：数据分析实用技巧</li>
<li class=""><strong>工具推荐</strong>：好用的生物信息学工具</li>
<li class=""><strong>案例分析</strong>：真实项目案例分享</li>
<li class=""><strong>学习路径</strong>：如何系统学习生物信息学</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="开源与协作">开源与协作<a href="https://biof3.com/blog/welcome-to-biof3#%E5%BC%80%E6%BA%90%E4%B8%8E%E5%8D%8F%E4%BD%9C" class="hash-link" aria-label="开源与协作的直接链接" title="开源与协作的直接链接" translate="no">​</a></h2>
<p>BioF3 是一个开源项目：</p>
<ul>
<li class=""><strong>许可证</strong>：MIT License</li>
<li class=""><strong>代码仓库</strong>：<a href="https://github.com/ShengXinF3/BioF3" target="_blank" rel="noopener noreferrer" class="">GitHub</a></li>
<li class=""><strong>欢迎贡献</strong>：Pull Requests、Issues、Discussions</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="联系我们">联系我们<a href="https://biof3.com/blog/welcome-to-biof3#%E8%81%94%E7%B3%BB%E6%88%91%E4%BB%AC" class="hash-link" aria-label="联系我们的直接链接" title="联系我们的直接链接" translate="no">​</a></h2>
<ul>
<li class=""><strong>GitHub</strong>: <a href="https://github.com/ShengXinF3" target="_blank" rel="noopener noreferrer" class="">@ShengXinF3</a></li>
<li class=""><strong>Issues</strong>: <a href="https://github.com/ShengXinF3/BioF3/issues" target="_blank" rel="noopener noreferrer" class="">提交问题</a></li>
<li class=""><strong>Discussions</strong>: <a href="https://github.com/ShengXinF3/BioF3/discussions" target="_blank" rel="noopener noreferrer" class="">参与讨论</a></li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="致谢">致谢<a href="https://biof3.com/blog/welcome-to-biof3#%E8%87%B4%E8%B0%A2" class="hash-link" aria-label="致谢的直接链接" title="致谢的直接链接" translate="no">​</a></h2>
<p>感谢所有开源生物信息学工具的开发者，以及为这个领域做出贡献的研究者们。</p>
<p>BioF3 会围绕可复现教程、真实案例和常用工具持续更新。</p>]]></content:encoded>
            <category>教程</category>
            <category>经验分享</category>
        </item>
        <item>
            <title><![CDATA[单细胞转录组分析入门指南]]></title>
            <link>https://biof3.com/blog/single-cell-analysis-intro</link>
            <guid>https://biof3.com/blog/single-cell-analysis-intro</guid>
            <pubDate>Sun, 05 May 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[单细胞转录组测序（scRNA-seq）技术已经成为现代生物学研究的重要工具。本文将介绍单细胞数据分析的基本概念和学习路径。]]></description>
            <content:encoded><![CDATA[<p>单细胞转录组测序（scRNA-seq）技术已经成为现代生物学研究的重要工具。本文将介绍单细胞数据分析的基本概念和学习路径。</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="什么是单细胞转录组测序">什么是单细胞转录组测序？<a href="https://biof3.com/blog/single-cell-analysis-intro#%E4%BB%80%E4%B9%88%E6%98%AF%E5%8D%95%E7%BB%86%E8%83%9E%E8%BD%AC%E5%BD%95%E7%BB%84%E6%B5%8B%E5%BA%8F" class="hash-link" aria-label="什么是单细胞转录组测序？的直接链接" title="什么是单细胞转录组测序？的直接链接" translate="no">​</a></h2>
<p>单细胞转录组测序（Single-cell RNA sequencing, scRNA-seq）是一种在单细胞水平测量基因表达的技术。</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="与传统-bulk-rna-seq-的区别">与传统 bulk RNA-seq 的区别<a href="https://biof3.com/blog/single-cell-analysis-intro#%E4%B8%8E%E4%BC%A0%E7%BB%9F-bulk-rna-seq-%E7%9A%84%E5%8C%BA%E5%88%AB" class="hash-link" aria-label="与传统 bulk RNA-seq 的区别的直接链接" title="与传统 bulk RNA-seq 的区别的直接链接" translate="no">​</a></h3>
<table><thead><tr><th>特性</th><th>bulk RNA-seq</th><th>scRNA-seq</th></tr></thead><tbody><tr><td><strong>分辨率</strong></td><td>细胞群体平均</td><td>单个细胞</td></tr><tr><td><strong>细胞异质性</strong></td><td>无法检测</td><td>可以检测</td></tr><tr><td><strong>稀有细胞类型</strong></td><td>难以发现</td><td>容易发现</td></tr><tr><td><strong>数据量</strong></td><td>较小</td><td>较大</td></tr><tr><td><strong>成本</strong></td><td>较低</td><td>较高</td></tr></tbody></table>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="为什么要学习单细胞分析">为什么要学习单细胞分析？<a href="https://biof3.com/blog/single-cell-analysis-intro#%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%AD%A6%E4%B9%A0%E5%8D%95%E7%BB%86%E8%83%9E%E5%88%86%E6%9E%90" class="hash-link" aria-label="为什么要学习单细胞分析？的直接链接" title="为什么要学习单细胞分析？的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-技术普及">1. 技术普及<a href="https://biof3.com/blog/single-cell-analysis-intro#1-%E6%8A%80%E6%9C%AF%E6%99%AE%E5%8F%8A" class="hash-link" aria-label="1. 技术普及的直接链接" title="1. 技术普及的直接链接" translate="no">​</a></h3>
<p>单细胞测序技术已经广泛应用于：</p>
<ul>
<li class="">发育生物学</li>
<li class="">免疫学</li>
<li class="">肿瘤学</li>
<li class="">神经科学</li>
<li class="">再生医学</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-数据爆发">2. 数据爆发<a href="https://biof3.com/blog/single-cell-analysis-intro#2-%E6%95%B0%E6%8D%AE%E7%88%86%E5%8F%91" class="hash-link" aria-label="2. 数据爆发的直接链接" title="2. 数据爆发的直接链接" translate="no">​</a></h3>
<ul>
<li class="">公共数据库中的单细胞数据集快速增长</li>
<li class="">越来越多的研究项目采用单细胞技术</li>
<li class="">需要大量的数据分析人才</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-职业发展">3. 职业发展<a href="https://biof3.com/blog/single-cell-analysis-intro#3-%E8%81%8C%E4%B8%9A%E5%8F%91%E5%B1%95" class="hash-link" aria-label="3. 职业发展的直接链接" title="3. 职业发展的直接链接" translate="no">​</a></h3>
<p>掌握单细胞数据分析技能可以：</p>
<ul>
<li class="">提升科研竞争力</li>
<li class="">拓展就业机会</li>
<li class="">参与前沿研究</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="单细胞数据分析流程">单细胞数据分析流程<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%8D%95%E7%BB%86%E8%83%9E%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E6%B5%81%E7%A8%8B" class="hash-link" aria-label="单细胞数据分析流程的直接链接" title="单细胞数据分析流程的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="标准分析流程">标准分析流程<a href="https://biof3.com/blog/single-cell-analysis-intro#%E6%A0%87%E5%87%86%E5%88%86%E6%9E%90%E6%B5%81%E7%A8%8B" class="hash-link" aria-label="标准分析流程的直接链接" title="标准分析流程的直接链接" translate="no">​</a></h3>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">原始数据 (FASTQ)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">质量控制 (QC)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">比对和定量 (Alignment &amp; Quantification)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">数据预处理 (Preprocessing)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">降维和聚类 (Dimensionality Reduction &amp; Clustering)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">细胞类型注释 (Cell Type Annotation)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">差异表达分析 (Differential Expression)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">功能富集分析 (Functional Enrichment)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ↓</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">高级分析 (轨迹推断、细胞通讯等)</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="主要分析步骤">主要分析步骤<a href="https://biof3.com/blog/single-cell-analysis-intro#%E4%B8%BB%E8%A6%81%E5%88%86%E6%9E%90%E6%AD%A5%E9%AA%A4" class="hash-link" aria-label="主要分析步骤的直接链接" title="主要分析步骤的直接链接" translate="no">​</a></h3>
<ol>
<li class="">
<p><strong>质量控制</strong></p>
<ul>
<li class="">过滤低质量细胞</li>
<li class="">去除双细胞</li>
<li class="">过滤低表达基因</li>
</ul>
</li>
<li class="">
<p><strong>标准化和归一化</strong></p>
<ul>
<li class="">去除技术噪音</li>
<li class="">批次效应校正</li>
</ul>
</li>
<li class="">
<p><strong>特征选择</strong></p>
<ul>
<li class="">识别高变异基因</li>
<li class="">降维（PCA、UMAP、t-SNE）</li>
</ul>
</li>
<li class="">
<p><strong>聚类分析</strong></p>
<ul>
<li class="">识别细胞亚群</li>
<li class="">细胞类型注释</li>
</ul>
</li>
<li class="">
<p><strong>下游分析</strong></p>
<ul>
<li class="">差异表达分析</li>
<li class="">轨迹推断</li>
<li class="">细胞通讯</li>
<li class="">功能富集</li>
</ul>
</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="常用工具和软件">常用工具和软件<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%B8%B8%E7%94%A8%E5%B7%A5%E5%85%B7%E5%92%8C%E8%BD%AF%E4%BB%B6" class="hash-link" aria-label="常用工具和软件的直接链接" title="常用工具和软件的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="r-语言生态">R 语言生态<a href="https://biof3.com/blog/single-cell-analysis-intro#r-%E8%AF%AD%E8%A8%80%E7%94%9F%E6%80%81" class="hash-link" aria-label="R 语言生态的直接链接" title="R 语言生态的直接链接" translate="no">​</a></h3>
<ul>
<li class=""><strong>Seurat</strong>: 最流行的单细胞分析包</li>
<li class=""><strong>SingleCellExperiment</strong>: Bioconductor 框架</li>
<li class=""><strong>Monocle</strong>: 轨迹推断</li>
<li class=""><strong>CellChat</strong>: 细胞通讯分析</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="python-生态">Python 生态<a href="https://biof3.com/blog/single-cell-analysis-intro#python-%E7%94%9F%E6%80%81" class="hash-link" aria-label="Python 生态的直接链接" title="Python 生态的直�接链接" translate="no">​</a></h3>
<ul>
<li class=""><strong>Scanpy</strong>: Python 版的 Seurat</li>
<li class=""><strong>AnnData</strong>: 数据结构</li>
<li class=""><strong>scVelo</strong>: RNA 速率分析</li>
<li class=""><strong>CellRank</strong>: 轨迹推断</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="其他工具">其他工具<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%85%B6%E4%BB%96%E5%B7%A5%E5%85%B7" class="hash-link" aria-label="其他工具的直接链接" title="其他工具的直接链接" translate="no">​</a></h3>
<ul>
<li class=""><strong>Cell Ranger</strong>: 10x Genomics 官方工具</li>
<li class=""><strong>STARsolo</strong>: 快速比对工具</li>
<li class=""><strong>Alevin</strong>: Salmon 的单细胞模块</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="学习路径建议">学习路径建议<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%AD%A6%E4%B9%A0%E8%B7%AF%E5%BE%84%E5%BB%BA%E8%AE%AE" class="hash-link" aria-label="学习路径建议的直接链接" title="学习路径建议的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="第一阶段基础准备1-2周">第一阶段：基础准备（1-2周）<a href="https://biof3.com/blog/single-cell-analysis-intro#%E7%AC%AC%E4%B8%80%E9%98%B6%E6%AE%B5%E5%9F%BA%E7%A1%80%E5%87%86%E5%A4%871-2%E5%91%A8" class="hash-link" aria-label="第一阶段：基础准备（1-2周）的直接链接" title="第一阶段：基础准备（1-2周）的直接链接" translate="no">​</a></h3>
<ol>
<li class="">
<p><strong>编程基础</strong></p>
<ul>
<li class="">R 语言基础</li>
<li class="">Python 基础（可选）</li>
<li class="">Linux 命令行</li>
</ul>
</li>
<li class="">
<p><strong>统计学基础</strong></p>
<ul>
<li class="">描述性统计</li>
<li class="">假设检验</li>
<li class="">多重检验校正</li>
</ul>
</li>
<li class="">
<p><strong>生物学背景</strong></p>
<ul>
<li class="">分子生物学基础</li>
<li class="">转录组学概念</li>
</ul>
</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="第二阶段单细胞入门2-4周">第二阶段：单细胞入门（2-4周）<a href="https://biof3.com/blog/single-cell-analysis-intro#%E7%AC%AC%E4%BA%8C%E9%98%B6%E6%AE%B5%E5%8D%95%E7%BB%86%E8%83%9E%E5%85%A5%E9%97%A82-4%E5%91%A8" class="hash-link" aria-label="第二阶段：单细胞入门（2-4周）的直接链接" title="第二阶段：单细胞入门（2-4周）的直接链接" translate="no">​</a></h3>
<ol>
<li class="">
<p>学习 BioF3 教程：</p>
<ul>
<li class=""><a class="" href="https://biof3.com/docs/basics/jupyter-databases">基础准备：Jupyter Notebooks 和数据库</a></li>
<li class=""><a class="" href="https://biof3.com/docs/basics/r-ggplot2">基础准备：R 语言和 ggplot2</a></li>
<li class=""><a class="" href="https://biof3.com/docs/modules/module01">模块01: 实践数据集与数据获取</a></li>
<li class=""><a class="" href="https://biof3.com/docs/modules/module02">模块02: 原始数据处理</a></li>
<li class=""><a class="" href="https://biof3.com/docs/modules/module03">模块03: 质量控制和聚类</a></li>
</ul>
</li>
<li class="">
<p>动手实践：</p>
<ul>
<li class="">使用公共数据集练习</li>
<li class="">重现已发表的分析</li>
</ul>
</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="第三阶段深入学习1-2个月">第三阶段：深入学习（1-2个月）<a href="https://biof3.com/blog/single-cell-analysis-intro#%E7%AC%AC%E4%B8%89%E9%98%B6%E6%AE%B5%E6%B7%B1%E5%85%A5%E5%AD%A6%E4%B9%A01-2%E4%B8%AA%E6%9C%88" class="hash-link" aria-label="第三阶段：深入学习（1-2个月）的直接链接" title="第三阶段：深入学习（1-2个月）的直接链接" translate="no">​</a></h3>
<ol>
<li class="">完成 BioF3 单细胞实践教程全部 12 个模块</li>
<li class="">学习高级分析方法</li>
<li class="">参与实际项目</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="第四阶段持续提升">第四阶段：持续提升<a href="https://biof3.com/blog/single-cell-analysis-intro#%E7%AC%AC%E5%9B%9B%E9%98%B6%E6%AE%B5%E6%8C%81%E7%BB%AD%E6%8F%90%E5%8D%87" class="hash-link" aria-label="第四阶段：持续提升的直接链接" title="第四阶段：持续提升的直接链接" translate="no">​</a></h3>
<ol>
<li class="">阅读最新文献</li>
<li class="">学习新工具和方法</li>
<li class="">参与开源项目</li>
<li class="">分享经验和知识</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="推荐资源">推荐资源<a href="https://biof3.com/blog/single-cell-analysis-intro#%E6%8E%A8%E8%8D%90%E8%B5%84%E6%BA%90" class="hash-link" aria-label="推荐资源的直接链接" title="推荐资源的�直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="在线课程">在线课程<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%9C%A8%E7%BA%BF%E8%AF%BE%E7%A8%8B" class="hash-link" aria-label="在线课程的直接链接" title="在线课程的直接链接" translate="no">​</a></h3>
<ul>
<li class=""><a class="" href="https://biof3.com/docs/modules/module01">BioF3 单细胞教程</a>（本站）</li>
<li class="">Broad Institute 单细胞课程</li>
<li class="">Sanger Institute 单细胞课程</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="书籍">书籍<a href="https://biof3.com/blog/single-cell-analysis-intro#%E4%B9%A6%E7%B1%8D" class="hash-link" aria-label="书籍的直接链接" title="书籍的直接链接" translate="no">​</a></h3>
<ul>
<li class="">"Orchestrating Single-Cell Analysis with Bioconductor"</li>
<li class="">"Single-Cell RNA Sequencing" (Methods in Molecular Biology)</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="公共数据集">公共数据集<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%85%AC%E5%85%B1%E6%95%B0%E6%8D%AE%E9%9B%86" class="hash-link" aria-label="公共数据集的直接链接" title="公共数据集的直接链接" translate="no">​</a></h3>
<ul>
<li class=""><a href="https://www.humancellatlas.org/" target="_blank" rel="noopener noreferrer" class="">Human Cell Atlas</a></li>
<li class=""><a href="https://singlecell.broadinstitute.org/" target="_blank" rel="noopener noreferrer" class="">Single Cell Portal</a></li>
<li class=""><a href="https://www.ncbi.nlm.nih.gov/geo/" target="_blank" rel="noopener noreferrer" class="">GEO</a></li>
<li class=""><a href="https://www.ebi.ac.uk/arrayexpress/" target="_blank" rel="noopener noreferrer" class="">ArrayExpress</a></li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="社区">社区<a href="https://biof3.com/blog/single-cell-analysis-intro#%E7%A4%BE%E5%8C%BA" class="hash-link" aria-label="社区的直接链接" title="社区的直接链接" translate="no">​</a></h3>
<ul>
<li class=""><a href="https://www.biostars.org/" target="_blank" rel="noopener noreferrer" class="">Biostars</a></li>
<li class=""><a href="https://support.bioconductor.org/" target="_blank" rel="noopener noreferrer" class="">Bioconductor Support</a></li>
<li class=""><a href="https://github.com/satijalab/seurat/discussions" target="_blank" rel="noopener noreferrer" class="">Seurat GitHub Discussions</a></li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="常见挑战">常见挑战<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%B8%B8%E8%A7%81%E6%8C%91%E6%88%98" class="hash-link" aria-label="常见挑战的直接链接" title="常见挑战的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-数据量大">1. 数据量大<a href="https://biof3.com/blog/single-cell-analysis-intro#1-%E6%95%B0%E6%8D%AE%E9%87%8F%E5%A4%A7" class="hash-link" aria-label="1. 数据量大的直接链接" title="1. 数据量大的直接链接" translate="no">​</a></h3>
<p><strong>解决方案</strong>：</p>
<ul>
<li class="">使用高性能计算资源</li>
<li class="">学习并行计算</li>
<li class="">使用内存高效的数据结构</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-分析复杂">2. 分析复杂<a href="https://biof3.com/blog/single-cell-analysis-intro#2-%E5%88%86%E6%9E%90%E5%A4%8D%E6%9D%82" class="hash-link" aria-label="2. 分析复杂的直接链接" title="2. 分析复杂的直接链接" translate="no">​</a></h3>
<p><strong>解决方案</strong>：</p>
<ul>
<li class="">从简单数据集开始</li>
<li class="">逐步学习各个分析步骤</li>
<li class="">参考标准流程</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-结果解读">3. 结果解读<a href="https://biof3.com/blog/single-cell-analysis-intro#3-%E7%BB%93%E6%9E%9C%E8%A7%A3%E8%AF%BB" class="hash-link" aria-label="3. 结果解读的直接链接" title="3. 结果解读的直接链接" translate="no">​</a></h3>
<p><strong>解决方案</strong>：</p>
<ul>
<li class="">加强生物学背景知识</li>
<li class="">查阅相关文献</li>
<li class="">与生物学家合作</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="实践建议">实践建议<a href="https://biof3.com/blog/single-cell-analysis-intro#%E5%AE%9E%E8%B7%B5%E5%BB%BA%E8%AE%AE" class="hash-link" aria-label="实践建议的直接链接" title="实践建议的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-动手为主">1. 动手为主<a href="https://biof3.com/blog/single-cell-analysis-intro#1-%E5%8A%A8%E6%89%8B%E4%B8%BA%E4%B8%BB" class="hash-link" aria-label="1. 动手为主的直接链接" title="1. 动手为主的直接链接" translate="no">​</a></h3>
<ul>
<li class="">不要只看教程，要实际操作</li>
<li class="">尝试修改代码参数</li>
<li class="">理解每一步的意义</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-记录笔记">2. 记录笔记<a href="https://biof3.com/blog/single-cell-analysis-intro#2-%E8%AE%B0%E5%BD%95%E7%AC%94%E8%AE%B0" class="hash-link" aria-label="2. 记录笔记的直接链接" title="2. 记录笔记的直接链接" translate="no">​</a></h3>
<ul>
<li class="">记录分析流程</li>
<li class="">保存重要代码片段</li>
<li class="">总结遇到的问题和解决方案</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-参与社区">3. 参与社区<a href="https://biof3.com/blog/single-cell-analysis-intro#3-%E5%8F%82%E4%B8%8E%E7%A4%BE%E5%8C%BA" class="hash-link" aria-label="3. 参与社区的直接链接" title="3. 参与社区的直接链接" translate="no">​</a></h3>
<ul>
<li class="">在论坛提问和回答</li>
<li class="">分享你的经验</li>
<li class="">参与开源项目</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-持续学习">4. 持续学习<a href="https://biof3.com/blog/single-cell-analysis-intro#4-%E6%8C%81%E7%BB%AD%E5%AD%A6%E4%B9%A0" class="hash-link" aria-label="4. 持续学习的直接链接" title="4. 持续学习的直接链接" translate="no">​</a></h3>
<ul>
<li class="">关注最新文献</li>
<li class="">学习新工具</li>
<li class="">参加学术会议和研讨会</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="下一步">下一步<a href="https://biof3.com/blog/single-cell-analysis-intro#%E4%B8%8B%E4%B8%80%E6%AD%A5" class="hash-link" aria-label="下一步的直接链接" title="下一步的直接链接" translate="no">​</a></h2>
<p>准备好开始学习了吗？</p>
<ol>
<li class=""><a class="" href="https://biof3.com/docs/intro">查看完整教程列表</a></li>
<li class=""><a class="" href="https://biof3.com/docs/modules/module01">从模块01开始</a></li>
<li class=""><a href="https://github.com/ShengXinF3/BioF3/discussions" target="_blank" rel="noopener noreferrer" class="">加入我们的讨论</a></li>
</ol>
<p>如有问题，欢迎在 GitHub Discussions 中提问。</p>]]></content:encoded>
            <category>单细胞分析</category>
            <category>转录组学</category>
            <category>教程</category>
        </item>
        <item>
            <title><![CDATA[多组学数据整合分析入门]]></title>
            <link>https://biof3.com/blog/multi-omics-integration</link>
            <guid>https://biof3.com/blog/multi-omics-integration</guid>
            <pubDate>Fri, 03 May 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[多组学数据整合分析是现代生物学研究的重要方向。本文将介绍如何整合不同组学层面的数据，获得更全面的生物学洞察。]]></description>
            <content:encoded><![CDATA[<p>多组学数据整合分析是现代生物学研究的重要方向。本文将介绍如何整合不同组学层面的数据，获得更全面的生物学洞察。</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="什么是多组学整合分析">什么是多组学整合分析？<a href="https://biof3.com/blog/multi-omics-integration#%E4%BB%80%E4%B9%88%E6%98%AF%E5%A4%9A%E7%BB%84%E5%AD%A6%E6%95%B4%E5%90%88%E5%88%86%E6%9E%90" class="hash-link" aria-label="什么是多组学整合分析？的直接链接" title="什么是多组学整合分析？的直接链接" translate="no">​</a></h2>
<p>多组学整合分析（Multi-omics Integration）是指将来自不同组学层面的数据（如基因组、转录组、蛋白质组、代谢组等）进行联合分析，以获得对生物系统更全面的理解。</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="为什么需要多组学整合">为什么需要多组学整合？<a href="https://biof3.com/blog/multi-omics-integration#%E4%B8%BA%E4%BB%80%E4%B9%88%E9%9C%80%E8%A6%81%E5%A4%9A%E7%BB%84%E5%AD%A6%E6%95%B4%E5%90%88" class="hash-link" aria-label="为什么需要多组学整合？的直接链接" title="为什么需要多组学整合？的直接链接" translate="no">​</a></h3>
<p>单一组学数据的局限性：</p>
<table><thead><tr><th>组学类型</th><th>测量内容</th><th>局限性</th></tr></thead><tbody><tr><td><strong>基因组</strong></td><td>DNA 序列变异</td><td>无法反映基因表达</td></tr><tr><td><strong>转录组</strong></td><td>mRNA 表达水平</td><td>无法反映蛋白质水平</td></tr><tr><td><strong>蛋白质组</strong></td><td>蛋白质丰度</td><td>无法反映代谢状态</td></tr><tr><td><strong>代谢组</strong></td><td>代谢物浓度</td><td>无法追溯上游调控</td></tr></tbody></table>
<p><strong>整合分析的优势</strong>：</p>
<ul>
<li class="">更全面的生物学视角</li>
<li class="">发现跨组学的调控关系</li>
<li class="">提高生物标志物的可靠性</li>
<li class="">揭示复杂的生物学机制</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="常见��的多组学整合策略">常见的多组学整合策略<a href="https://biof3.com/blog/multi-omics-integration#%E5%B8%B8%E8%A7%81%E7%9A%84%E5%A4%9A%E7%BB%84%E5%AD%A6%E6%95%B4%E5%90%88%E7%AD%96%E7%95%A5" class="hash-link" aria-label="常见的多组学整合策略的直接链接" title="常见的多组学整合策略的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-早期整合early-integration">1. 早期整合（Early Integration）<a href="https://biof3.com/blog/multi-omics-integration#1-%E6%97%A9%E6%9C%9F%E6%95%B4%E5%90%88early-integration" class="hash-link" aria-label="1. 早期整合（Early Integration）的直接链接" title="1. 早期整合（Early Integration）的直接链接" translate="no">​</a></h3>
<p>在数据预处理阶段就将不同组学数据合并。</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> pandas </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> pd</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> numpy </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> np</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 合并不同组学数据</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">rna_data </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">read_csv</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'rna_expression.csv'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> index_col</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">protein_data </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">read_csv</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'protein_abundance.csv'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> index_col</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 标准化</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> sklearn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">preprocessing </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> StandardScaler</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">scaler </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> StandardScaler</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">rna_scaled </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> scaler</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">fit_transform</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rna_data</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">protein_scaled </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> scaler</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">fit_transform</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">protein_data</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 合并</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">combined_data </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> np</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">hstack</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">rna_scaled</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein_scaled</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<p><strong>优点</strong>：</p>
<ul>
<li class="">简单直接</li>
<li class="">可以使用标准的机器学习方法</li>
</ul>
<p><strong>缺点</strong>：</p>
<ul>
<li class="">可能丢失组学特异性信息</li>
<li class="">不同组学的尺度差异大</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-中期整合intermediate-integration">2. 中期整合（Intermediate Integration）<a href="https://biof3.com/blog/multi-omics-integration#2-%E4%B8%AD%E6%9C%9F%E6%95%B4%E5%90%88intermediate-integration" class="hash-link" aria-label="2. 中期整合（Intermediate Integration）的直接链接" title="2. 中期整合（Intermediate Integration）的直接链接" translate="no">​</a></h3>
<p>分别分析各组学数据，然后整合分析结果。</p>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">library(mixOmics)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># DIABLO 方法</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">design &lt;- matrix(0.1, ncol = 3, nrow = 3, </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                dimnames = list(c("RNA", "Protein", "Metabolite"),</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                               c("RNA", "Protein", "Metabolite")))</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">diag(design) &lt;- 0</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">result &lt;- block.splsda(</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  X = list(RNA = rna_data, </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">           Protein = protein_data, </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">           Metabolite = metabolite_data),</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  Y = sample_groups,</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  design = design,</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  ncomp = 3</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 可视化</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plotDiablo(result)</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-晚期整合late-integration">3. 晚期整合（Late Integration）<a href="https://biof3.com/blog/multi-omics-integration#3-%E6%99%9A%E6%9C%9F%E6%95%B4%E5%90%88late-integration" class="hash-link" aria-label="3. 晚期整合（Late Integration）的直接链接" title="3. 晚期整合（Late Integration）的直接链接" translate="no">​</a></h3>
<p>独立分析各组学，最后整合结论。</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token comment" style="color:#999988;font-style:italic"># 分别进行差异分析</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> scipy </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> stats</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># RNA-seq 差异分析</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">rna_pvalues </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">[</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> gene </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> rna_data</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">columns</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    t_stat</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> p_val </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> stats</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">ttest_ind</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        rna_data</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">gene</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">group1</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        rna_data</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">gene</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">group2</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    rna_pvalues</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">append</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">p_val</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 蛋白质组差异分析</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">protein_pvalues </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">[</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> protein </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> protein_data</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">columns</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    t_stat</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> p_val </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> stats</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">ttest_ind</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        protein_data</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">protein</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">group1</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        protein_data</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">protein</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">group2</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    protein_pvalues</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">append</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">p_val</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 整合结果</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> scipy</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">stats </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> combine_pvalues</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">combined_pval </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> combine_pvalues</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">rna_pvalues</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein_pvalues</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                                method</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'fisher'</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="常用工具和方法">常用工具和方法<a href="https://biof3.com/blog/multi-omics-integration#%E5%B8%B8%E7%94%A8%E5%B7%A5%E5%85%B7%E5%92%8C%E6%96%B9%E6%B3%95" class="hash-link" aria-label="常用工具和方法的直接链接" title="常用工具和方法的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-mixomics-r">1. mixOmics (R)<a href="https://biof3.com/blog/multi-omics-integration#1-mixomics-r" class="hash-link" aria-label="1. mixOmics (R)的直接链接" title="1. mixOmics (R)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">library(mixOmics)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># PLS-DA 分析</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">result &lt;- plsda(X = multi_omics_data, </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                Y = sample_groups, </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                ncomp = 3)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 可视化</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plotIndiv(result, comp = c(1,2), </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">          group = sample_groups, </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">          legend = TRUE)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 变量重要性</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plotLoadings(result, comp = 1)</span><br></div></code></pre></div></div>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">多组学数据整合</li>
<li class="">监督和非监督分析</li>
<li class="">特征选择</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-mofa-multi-omics-factor-analysis">2. MOFA (Multi-Omics Factor Analysis)<a href="https://biof3.com/blog/multi-omics-integration#2-mofa-multi-omics-factor-analysis" class="hash-link" aria-label="2. MOFA (Multi-Omics Factor Analysis)的直接链接" title="2. MOFA (Multi-Omics Factor Analysis)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> mofapy2</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">run</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">entry_point </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> entry_point</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 准备数据</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">data </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">'RNA'</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> rna_matrix</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">'Protein'</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> protein_matrix</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">'Metabolite'</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> metabolite_matrix</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 运行 MOFA</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> entry_point</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_data_options</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">scale_groups</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">False</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> scale_views</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">True</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_data_matrix</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">data</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_model_options</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">factors</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">10</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">build</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">run</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 可视化因子</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">plot_variance_explained</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">plot_factor_cor</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<p><strong>特点</strong>：</p>
<ul>
<li class="">无监督方法</li>
<li class="">识别跨组学的潜在因子</li>
<li class="">处理缺失数据</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-snf-similarity-network-fusion">3. SNF (Similarity Network Fusion)<a href="https://biof3.com/blog/multi-omics-integration#3-snf-similarity-network-fusion" class="hash-link" aria-label="3. SNF (Similarity Network Fusion)的直接链接" title="3. SNF (Similarity Network Fusion)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">library(SNFtool)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 构建相似性网络</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">W1 &lt;- affinityMatrix(dist(rna_data))</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">W2 &lt;- affinityMatrix(dist(protein_data))</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 融合网络</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">W &lt;- SNF(list(W1, W2), K = 20, t = 20)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 聚类</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">groups &lt;- spectralClustering(W, K = 3)</span><br></div></code></pre></div></div>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">患者分层</li>
<li class="">亚型识别</li>
<li class="">网络分析</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-wgcna-加权基因共表达网络分析">4. WGCNA (加权基因共表达网络分析)<a href="https://biof3.com/blog/multi-omics-integration#4-wgcna-%E5%8A%A0%E6%9D%83%E5%9F%BA%E5%9B%A0%E5%85%B1%E8%A1%A8%E8%BE%BE%E7%BD%91%E7%BB%9C%E5%88%86%E6%9E%90" class="hash-link" aria-label="4. WGCNA (加权基因共表达网络分析)的直接链接" title="4. WGCNA (加权基因共表达网络分析)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">library(WGCNA)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 构建网络</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">net &lt;- blockwiseModules(</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  datExpr,</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  power = 6,</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  TOMType = "unsigned",</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  minModuleSize = 30,</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  reassignThreshold = 0,</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  mergeCutHeight = 0.25</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 模块与表型关联</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">moduleTraitCor &lt;- cor(net$MEs, clinical_traits, use = "p")</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">moduleTraitPvalue &lt;- corPvalueStudent(moduleTraitCor, nSamples)</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="实战案例癌症多组学分析">实战案例：癌症多组学分析<a href="https://biof3.com/blog/multi-omics-integration#%E5%AE%9E%E6%88%98%E6%A1%88%E4%BE%8B%E7%99%8C%E7%97%87%E5%A4%9A%E7%BB%84%E5%AD%A6%E5%88%86%E6%9E%90" class="hash-link" aria-label="实战案例：癌症多组学分析的直接链接" title="实战案例：癌症多组学分析的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="数据准备">数据准备<a href="https://biof3.com/blog/multi-omics-integration#%E6%95%B0%E6%8D%AE%E5%87%86%E5%A4%87" class="hash-link" aria-label="数据准备的直接链接" title="数据准备的直接链接" translate="no">​</a></h3>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> pandas </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> pd</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> numpy </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> np</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> sklearn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">preprocessing </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> StandardScaler</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 加载数据</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">rna_seq </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">read_csv</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'tcga_rna_seq.csv'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> index_col</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cnv </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">read_csv</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'tcga_cnv.csv'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> index_col</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">methylation </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">read_csv</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'tcga_methylation.csv'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> index_col</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">clinical </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> pd</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">read_csv</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'tcga_clinical.csv'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> index_col</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 确保样本一致</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">common_samples </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token builtin">list</span><span class="token punctuation" style="color:#393A34">(</span><span class="token builtin">set</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rna_seq</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">columns</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token operator" style="color:#393A34">&amp;</span><span class="token plain"> </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                     </span><span class="token builtin">set</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">cnv</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">columns</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token operator" style="color:#393A34">&amp;</span><span class="token plain"> </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                     </span><span class="token builtin">set</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">methylation</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">columns</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">rna_seq </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> rna_seq</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">common_samples</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cnv </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> cnv</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">common_samples</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">methylation </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> methylation</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">common_samples</span><span class="token punctuation" style="color:#393A34">]</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="使用-mofa-进行整合">使用 MOFA 进行整合<a href="https://biof3.com/blog/multi-omics-integration#%E4%BD%BF%E7%94%A8-mofa-%E8%BF%9B%E8%A1%8C%E6%95%B4%E5%90%88" class="hash-link" aria-label="使用 MOFA 进行整合的直接链接" title="使用 MOFA 进行整合的直接链接" translate="no">​</a></h3>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> mofapy2</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">run</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">entry_point </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> entry_point</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 准备数据</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">data_dict </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">'RNA'</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> rna_seq</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">T</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">values</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">'CNV'</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> cnv</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">T</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">values</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">'Methylation'</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> methylation</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">T</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">values</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 初始化 MOFA</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> entry_point</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_data_options</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    scale_groups</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">False</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    scale_views</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">True</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_data_matrix</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">data_dict</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> likelihoods</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">[</span><span class="token string" style="color:#e3116c">'gaussian'</span><span class="token punctuation" style="color:#393A34">]</span><span class="token operator" style="color:#393A34">*</span><span class="token number" style="color:#36acaa">3</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 设置模型参数</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_model_options</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    factors</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">15</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    spikeslab_weights</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">True</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    ard_factors</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">True</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 训练模型</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">build</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">run</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 保存模型</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ent</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">save</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'mofa_model.hdf5'</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="结果解读">结果解读<a href="https://biof3.com/blog/multi-omics-integration#%E7%BB%93%E6%9E%9C%E8%A7%A3%E8%AF%BB" class="hash-link" aria-label="结果解读的直接链接" title="结果解读的直接链接" translate="no">​</a></h3>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token comment" style="color:#999988;font-style:italic"># 加载模型</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> mofapy2</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">run</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">entry_point </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> entry_point</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">model </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> entry_point</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">model</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">load</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'mofa_model.hdf5'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 查看方差解释</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">model</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">plot_variance_explained</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    plot_total</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">True</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    x</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'view'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    y</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'factor'</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 提取因子值</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">factors </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> model</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">get_factors</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 与临床特征关联</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> scipy</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">stats </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> stats</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> i </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> </span><span class="token builtin">range</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">factors</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">shape</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    corr</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> pval </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> stats</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">spearmanr</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        factors</span><span class="token punctuation" style="color:#393A34">[</span><span class="token punctuation" style="color:#393A34">:</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> i</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        clinical</span><span class="token punctuation" style="color:#393A34">[</span><span class="token string" style="color:#e3116c">'survival_time'</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token keyword" style="color:#00009f">print</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string-interpolation string" style="color:#e3116c">f"Factor </span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">{</span><span class="token string-interpolation interpolation">i</span><span class="token string-interpolation interpolation operator" style="color:#393A34">+</span><span class="token string-interpolation interpolation number" style="color:#36acaa">1</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">}</span><span class="token string-interpolation string" style="color:#e3116c">: r=</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">{</span><span class="token string-interpolation interpolation">corr</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">:</span><span class="token string-interpolation interpolation format-spec">.3f</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">}</span><span class="token string-interpolation string" style="color:#e3116c">, p=</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">{</span><span class="token string-interpolation interpolation">pval</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">:</span><span class="token string-interpolation interpolation format-spec">.3e</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">}</span><span class="token string-interpolation string" style="color:#e3116c">"</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="机器学习在多组学中的应用">机器学习在多组学中的应用<a href="https://biof3.com/blog/multi-omics-integration#%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E5%9C%A8%E5%A4%9A%E7%BB%84%E5%AD%A6%E4%B8%AD%E7%9A%84%E5%BA%94%E7%94%A8" class="hash-link" aria-label="机器学习在多组学中的应用的直接链接" title="机器学习在多组学中的应用的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-随机森林">1. 随机森林<a href="https://biof3.com/blog/multi-omics-integration#1-%E9%9A%8F%E6%9C%BA%E6%A3%AE%E6%9E%97" class="hash-link" aria-label="1. 随机森林的直接链接" title="1. 随机森林的直接链接" translate="no">​</a></h3>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> sklearn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">ensemble </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> RandomForestClassifier</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> sklearn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">model_selection </span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> cross_val_score</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 合并特征</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">X </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> np</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">hstack</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">rna_scaled</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein_scaled</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> metabolite_scaled</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">y </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> sample_labels</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 训练模型</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">rf </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> RandomForestClassifier</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">n_estimators</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">100</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> random_state</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">42</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">scores </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> cross_val_score</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rf</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> X</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> y</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> cv</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">5</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">print</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string-interpolation string" style="color:#e3116c">f"准确率: </span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">{</span><span class="token string-interpolation interpolation">scores</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">.</span><span class="token string-interpolation interpolation">mean</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">(</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">)</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">:</span><span class="token string-interpolation interpolation format-spec">.3f</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">}</span><span class="token string-interpolation string" style="color:#e3116c"> (+/- </span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">{</span><span class="token string-interpolation interpolation">scores</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">.</span><span class="token string-interpolation interpolation">std</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">(</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">)</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">:</span><span class="token string-interpolation interpolation format-spec">.3f</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">}</span><span class="token string-interpolation string" style="color:#e3116c">)"</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 特征重要性</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">rf</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">fit</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">X</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> y</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">feature_importance </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> rf</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">feature_importances_</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-深度学习">2. 深度学习<a href="https://biof3.com/blog/multi-omics-integration#2-%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0" class="hash-link" aria-label="2. 深度学习的直接链接" title="2. 深度学习的直接链接" translate="no">​</a></h3>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> torch</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> torch</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">nn </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> nn</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">class</span><span class="token plain"> </span><span class="token class-name">MultiOmicsNet</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Module</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token keyword" style="color:#00009f">def</span><span class="token plain"> </span><span class="token function" style="color:#d73a49">__init__</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">self</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> rna_dim</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein_dim</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> metabolite_dim</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> n_classes</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token builtin">super</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">__init__</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token comment" style="color:#999988;font-style:italic"># 各组学的编码器</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">rna_encoder </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Sequential</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rna_dim</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">256</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">ReLU</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Dropout</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">0.3</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">256</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">64</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">protein_encoder </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Sequential</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">protein_dim</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">128</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">ReLU</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Dropout</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">0.3</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">128</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">64</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">metabolite_encoder </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Sequential</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">metabolite_dim</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">64</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">ReLU</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Dropout</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">0.3</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">64</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">64</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token comment" style="color:#999988;font-style:italic"># 整合层</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">fusion </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Sequential</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">64</span><span class="token operator" style="color:#393A34">*</span><span class="token number" style="color:#36acaa">3</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">128</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">ReLU</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Dropout</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">0.3</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Linear</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">128</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> n_classes</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token keyword" style="color:#00009f">def</span><span class="token plain"> </span><span class="token function" style="color:#d73a49">forward</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">self</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> rna</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> metabolite</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        rna_feat </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">rna_encoder</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rna</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        protein_feat </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">protein_encoder</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">protein</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        metabolite_feat </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">metabolite_encoder</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">metabolite</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token comment" style="color:#999988;font-style:italic"># 拼接特征</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        combined </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> torch</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">cat</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">rna_feat</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein_feat</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> metabolite_feat</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> dim</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        output </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> self</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">fusion</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">combined</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token keyword" style="color:#00009f">return</span><span class="token plain"> output</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 训练模型</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">model </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> MultiOmicsNet</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rna_dim</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">5000</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein_dim</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">1000</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                     metabolite_dim</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">200</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> n_classes</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">3</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">criterion </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> nn</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">CrossEntropyLoss</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">optimizer </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> torch</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">optim</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Adam</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">model</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">parameters</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> lr</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0.001</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="数据可视化">数据可视化<a href="https://biof3.com/blog/multi-omics-integration#%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96" class="hash-link" aria-label="数据可视化的直接链接" title="数据可视化的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-热图">1. 热图<a href="https://biof3.com/blog/multi-omics-integration#1-%E7%83%AD%E5%9B%BE" class="hash-link" aria-label="1. 热图的直接链接" title="1. 热图的直接链接" translate="no">​</a></h3>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> seaborn </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> sns</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> matplotlib</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pyplot </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> plt</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 相关性热图</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">fig</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> axes </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> plt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">subplots</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">3</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> figsize</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">18</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">5</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sns</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">heatmap</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rna_data</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">corr</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> ax</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">axes</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> cmap</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'RdBu_r'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> center</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">axes</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_title</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'RNA-seq 相关性'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sns</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">heatmap</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">protein_data</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">corr</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> ax</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">axes</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> cmap</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'RdBu_r'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> center</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">axes</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_title</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'蛋白质组相关性'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sns</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">heatmap</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">metabolite_data</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">corr</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> ax</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">axes</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">2</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> cmap</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'RdBu_r'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> center</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">axes</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">2</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_title</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'代谢组相关性'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">tight_layout</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">show</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-网络图">2. 网络图<a href="https://biof3.com/blog/multi-omics-integration#2-%E7%BD%91%E7%BB%9C%E5%9B%BE" class="hash-link" aria-label="2. 网络图的直接链接" title="2. 网络图的直接链接" translate="no">​</a></h3>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> networkx </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> nx</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 构建跨组学网络</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">G </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> nx</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Graph</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 添加节点</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> gene </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> top_genes</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    G</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">add_node</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">gene</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token builtin">type</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'RNA'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> protein </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> top_proteins</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    G</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">add_node</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">protein</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token builtin">type</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'Protein'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 添加边（基于相关性）</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> gene </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> top_genes</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> protein </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> top_proteins</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        corr </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> np</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">corrcoef</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">rna_data</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">gene</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein_data</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">protein</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">0</span><span class="token punctuation" style="color:#393A34">,</span><span class="token number" style="color:#36acaa">1</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token keyword" style="color:#00009f">if</span><span class="token plain"> </span><span class="token builtin">abs</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">corr</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token operator" style="color:#393A34">&gt;</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">0.7</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">            G</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">add_edge</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">gene</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> protein</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> weight</span><span class="token operator" style="color:#393A34">=</span><span class="token builtin">abs</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">corr</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 可视化</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pos </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> nx</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">spring_layout</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">G</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">nx</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">draw</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">G</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> pos</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> node_color</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">[</span><span class="token string" style="color:#e3116c">'red'</span><span class="token plain"> </span><span class="token keyword" style="color:#00009f">if</span><span class="token plain"> G</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">nodes</span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain">n</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">[</span><span class="token string" style="color:#e3116c">'type'</span><span class="token punctuation" style="color:#393A34">]</span><span class="token operator" style="color:#393A34">==</span><span class="token string" style="color:#e3116c">'RNA'</span><span class="token plain"> </span><span class="token keyword" style="color:#00009f">else</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'blue'</span><span class="token plain"> </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">                            </span><span class="token keyword" style="color:#00009f">for</span><span class="token plain"> n </span><span class="token keyword" style="color:#00009f">in</span><span class="token plain"> G</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">nodes</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        with_labels</span><span class="token operator" style="color:#393A34">=</span><span class="token boolean" style="color:#36acaa">True</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> node_size</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">500</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">show</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="最佳实践">最佳实践<a href="https://biof3.com/blog/multi-omics-integration#%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5" class="hash-link" aria-label="最佳实践的直接链接" title="最佳实践的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-数据预处理">1. 数据预处理<a href="https://biof3.com/blog/multi-omics-integration#1-%E6%95%B0%E6%8D%AE%E9%A2%84%E5%A4%84%E7%90%86" class="hash-link" aria-label="1. 数据预处理的直接链接" title="1. 数据预处理的直接链接" translate="no">​</a></h3>
<ul>
<li class=""><strong>标准化</strong>：不同组学数据尺度差异大，需要标准化</li>
<li class=""><strong>批次效应</strong>：使用 ComBat 等方法校正</li>
<li class=""><strong>缺失值处理</strong>：插补或删除</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-特征选择">2. 特征选择<a href="https://biof3.com/blog/multi-omics-integration#2-%E7%89%B9%E5%BE%81%E9%80%89%E6%8B%A9" class="hash-link" aria-label="2. 特征选择的直接链接" title="2. 特征选择的直接链接" translate="no">​</a></h3>
<ul>
<li class="">减少维度，提高计算效率</li>
<li class="">选择生物学相关的特征</li>
<li class="">避免过拟合</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-验证">3. 验证<a href="https://biof3.com/blog/multi-omics-integration#3-%E9%AA%8C%E8%AF%81" class="hash-link" aria-label="3. 验证的直接链接" title="3. 验证的直接链接" translate="no">​</a></h3>
<ul>
<li class="">交叉验证</li>
<li class="">独立数据集验证</li>
<li class="">生物学验证</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-解释性">4. 解释性<a href="https://biof3.com/blog/multi-omics-integration#4-%E8%A7%A3%E9%87%8A%E6%80%A7" class="hash-link" aria-label="4. 解释性的直接链接" title="4. 解释性的直接链接" translate="no">​</a></h3>
<ul>
<li class="">不仅要预测准确，还要有生物学意义</li>
<li class="">结合通路分析</li>
<li class="">文献验证</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="常见挑战">常见挑战<a href="https://biof3.com/blog/multi-omics-integration#%E5%B8%B8%E8%A7%81%E6%8C%91%E6%88%98" class="hash-link" aria-label="常见挑战的直接链接" title="常见挑战的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-数据异质性">1. 数据异质性<a href="https://biof3.com/blog/multi-omics-integration#1-%E6%95%B0%E6%8D%AE%E5%BC%82%E8%B4%A8%E6%80%A7" class="hash-link" aria-label="1. 数据异质性的直接链接" title="1. 数据异质性的直接链接" translate="no">​</a></h3>
<p><strong>问题</strong>：不同组学数据的特性差异大</p>
<p><strong>解决方案</strong>：</p>
<ul>
<li class="">使用适合各组学的预处理方法</li>
<li class="">考虑组学特异性的权重</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-样本量不匹配">2. 样本量不匹配<a href="https://biof3.com/blog/multi-omics-integration#2-%E6%A0%B7%E6%9C%AC%E9%87%8F%E4%B8%8D%E5%8C%B9%E9%85%8D" class="hash-link" aria-label="2. 样本量不匹配的直接链接" title="2. 样本量不匹配的直接链接" translate="no">​</a></h3>
<p><strong>问题</strong>：不同组学的样本数可能不同</p>
<p><strong>解决方案</strong>：</p>
<ul>
<li class="">只使用共同样本</li>
<li class="">使用能处理缺失数据的方法（如 MOFA）</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-计算复杂度">3. 计算复杂度<a href="https://biof3.com/blog/multi-omics-integration#3-%E8%AE%A1%E7%AE%97%E5%A4%8D%E6%9D%82%E5%BA%A6" class="hash-link" aria-label="3. 计算复杂度的直接链接" title="3. 计算复杂度的直接链接" translate="no">​</a></h3>
<p><strong>问题</strong>：多组学数据量大，计算耗时</p>
<p><strong>解决方案</strong>：</p>
<ul>
<li class="">特征选择</li>
<li class="">使用高性能计算资源</li>
<li class="">并行计算</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="学习资源">学习资源<a href="https://biof3.com/blog/multi-omics-integration#%E5%AD%A6%E4%B9%A0%E8%B5%84%E6%BA%90" class="hash-link" aria-label="学习资源的直接链接" title="学习资源的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="在线课程">在线课程<a href="https://biof3.com/blog/multi-omics-integration#%E5%9C%A8%E7%BA%BF%E8%AF%BE%E7%A8%8B" class="hash-link" aria-label="在线课程的直接链接" title="在线课程的直接链接" translate="no">​</a></h3>
<ul>
<li class="">Coursera: Multi-omics Data Analysis</li>
<li class="">edX: Systems Biology</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="书籍">书籍<a href="https://biof3.com/blog/multi-omics-integration#%E4%B9%A6%E7%B1%8D" class="hash-link" aria-label="书籍的直接链接" title="书籍的直接链接" translate="no">​</a></h3>
<ul>
<li class="">"Multi-Omics Data Integration" by Olivier Elemento</li>
<li class="">"Computational Methods for Integrative Analysis of Genomics Data"</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="工具文档">工具文档<a href="https://biof3.com/blog/multi-omics-integration#%E5%B7%A5%E5%85%B7%E6%96%87%E6%A1%A3" class="hash-link" aria-label="工具文档的直接链接" title="工具文档的直接链接" translate="no">​</a></h3>
<ul>
<li class=""><a href="http://mixomics.org/" target="_blank" rel="noopener noreferrer" class="">mixOmics</a></li>
<li class=""><a href="https://biofam.github.io/MOFA2/" target="_blank" rel="noopener noreferrer" class="">MOFA</a></li>
<li class=""><a href="https://cran.r-project.org/web/packages/SNFtool/" target="_blank" rel="noopener noreferrer" class="">SNFtool</a></li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="总结">总结<a href="https://biof3.com/blog/multi-omics-integration#%E6%80%BB%E7%BB%93" class="hash-link" aria-label="总结的直接链接" title="总结的直接链接" translate="no">​</a></h2>
<p>多组学整合分析是一个快速发展的领域，关键要点：</p>
<ol>
<li class=""><strong>选择合适的整合策略</strong>：早期、中期或晚期整合</li>
<li class=""><strong>使用专业工具</strong>：mixOmics、MOFA、SNF 等</li>
<li class=""><strong>注重数据质量</strong>：预处理和标准化</li>
<li class=""><strong>生物学解释</strong>：结果要有生物学意义</li>
<li class=""><strong>持续学习</strong>：关注新方法和工具</li>
</ol>
<hr>
<p>想了解更多？查看我们的其他教程：</p>
<ul>
<li class=""><a class="" href="https://biof3.com/blog/single-cell-analysis-intro">单细胞转录组分析</a></li>
<li class=""><a class="" href="https://biof3.com/blog/bioinformatics-tools-2024">生物信息学工具推荐</a></li>
</ul>]]></content:encoded>
            <category>整合分析</category>
            <category>多组学</category>
            <category>教程</category>
        </item>
        <item>
            <title><![CDATA[2024年必备的生物信息学工具推荐]]></title>
            <link>https://biof3.com/blog/bioinformatics-tools-2024</link>
            <guid>https://biof3.com/blog/bioinformatics-tools-2024</guid>
            <pubDate>Wed, 01 May 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[作为生物信息学从业者，选择合适的工具可以大大提高工作效率。本文整理了2024年最值得使用的生物信息学工具和软件。]]></description>
            <content:encoded><![CDATA[<p>作为生物信息学从业者，选择合适的工具可以大大提高工作效率。本文整理了2024年最值得使用的生物信息学工具和软件。</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="编程环境">编程环境<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E7%BC%96%E7%A8%8B%E7%8E%AF%E5%A2%83" class="hash-link" aria-label="编程环境的直接链接" title="编程环境的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-python-环境管理">1. Python 环境管理<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-python-%E7%8E%AF%E5%A2%83%E7%AE%A1%E7%90%86" class="hash-link" aria-label="1. Python 环境管理的直接链接" title="1. Python 环境管理的直接链接" translate="no">​</a></h3>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="conda--mamba">Conda / Mamba<a href="https://biof3.com/blog/bioinformatics-tools-2024#conda--mamba" class="hash-link" aria-label="Conda / Mamba的直接链接" title="Conda / Mamba的直接链接" translate="no">​</a></h4>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 安装 Mamba (更快的 Conda)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">conda install mamba -n base -c conda-forge</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 创建环境</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">mamba create -n bioinfo python=3.11</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">mamba activate bioinfo</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 安装包</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">mamba install -c bioconda scanpy seurat</span><br></div></code></pre></div></div>
<p><strong>优点</strong>：</p>
<ul>
<li class="">环境隔离</li>
<li class="">依赖管理</li>
<li class="">跨平台</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="uv-新兴工具">uv (新兴工具)<a href="https://biof3.com/blog/bioinformatics-tools-2024#uv-%E6%96%B0%E5%85%B4%E5%B7%A5%E5%85%B7" class="hash-link" aria-label="uv (新兴工具)的直接链接" title="uv (新兴工具)的直接链接" translate="no">​</a></h4>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 安装</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">curl -LsSf https://astral.sh/uv/install.sh | sh</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 创建项目</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">uv init my-project</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cd my-project</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 添加依赖</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">uv add scanpy pandas</span><br></div></code></pre></div></div>
<p><strong>优点</strong>：</p>
<ul>
<li class="">极快的速度</li>
<li class="">现代化的依赖管理</li>
<li class="">与 pip 兼容</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-r-环境">2. R 环境<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-r-%E7%8E%AF%E5%A2%83" class="hash-link" aria-label="2. R 环境的直接链接" title="2. R 环境的直接链接" translate="no">​</a></h3>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="rstudio">RStudio<a href="https://biof3.com/blog/bioinformatics-tools-2024#rstudio" class="hash-link" aria-label="RStudio的直接链接" title="RStudio的直接链接" translate="no">​</a></h4>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<ul>
<li class="">强大的 IDE</li>
<li class="">集成调试功能</li>
<li class="">支持 R Markdown</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="renv-包管理">renv (包管理)<a href="https://biof3.com/blog/bioinformatics-tools-2024#renv-%E5%8C%85%E7%AE%A1%E7%90%86" class="hash-link" aria-label="renv (包管理)的直接链接" title="renv (包管理)的直接链接" translate="no">​</a></h4>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 初始化项目</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">renv::init()</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 安装包</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">install.packages("Seurat")</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 保存环境</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">renv::snapshot()</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 恢复环境</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">renv::restore()</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="单细胞分析工具">单细胞分析工具<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E5%8D%95%E7%BB%86%E8%83%9E%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7" class="hash-link" aria-label="单细胞分析工具的直接链接" title="单细胞分析工具的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-seurat-r">1. Seurat (R)<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-seurat-r" class="hash-link" aria-label="1. Seurat (R)的直接链接" title="1. Seurat (R)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">library(Seurat)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 创建对象</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- CreateSeuratObject(counts = data)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 标准流程</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- NormalizeData(pbmc)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- FindVariableFeatures(pbmc)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- ScaleData(pbmc)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- RunPCA(pbmc)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- FindNeighbors(pbmc)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- FindClusters(pbmc)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">pbmc &lt;- RunUMAP(pbmc, dims = 1:30)</span><br></div></code></pre></div></div>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">标准单细胞分析</li>
<li class="">多模态数据整合</li>
<li class="">空间转录组</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-scanpy-python">2. Scanpy (Python)<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-scanpy-python" class="hash-link" aria-label="2. Scanpy (Python)的直接链接" title="2. Scanpy (Python)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> scanpy </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> sc</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 读取数据</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">adata </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">read_10x_h5</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'filtered_feature_bc_matrix.h5'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic"># 标准流程</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pp</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">filter_cells</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> min_genes</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">200</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pp</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">filter_genes</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> min_cells</span><span class="token operator" style="color:#393A34">=</span><span class="token number" style="color:#36acaa">3</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pp</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">normalize_total</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pp</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">log1p</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pp</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">highly_variable_genes</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">tl</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pca</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pp</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">neighbors</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">tl</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">umap</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sc</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">tl</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">leiden</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">adata</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">Python 用户</li>
<li class="">大规模数据</li>
<li class="">与深度学习集成</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-cell-ranger-10x-genomics">3. Cell Ranger (10x Genomics)<a href="https://biof3.com/blog/bioinformatics-tools-2024#3-cell-ranger-10x-genomics" class="hash-link" aria-label="3. Cell Ranger (10x Genomics)的直接链接" title="3. Cell Ranger (10x Genomics)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 比对和定量</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">cellranger count \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  --id=sample1 \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  --transcriptome=/path/to/refdata \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  --fastqs=/path/to/fastqs \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  --sample=sample1</span><br></div></code></pre></div></div>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">10x Genomics 数据</li>
<li class="">原始数据处理</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="基因组分析工具">基因组分析工具<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E5%9F%BA%E5%9B%A0%E7%BB%84%E5%88%86%E6%9E%90%E5%B7%A5%E5%85%B7" class="hash-link" aria-label="基因组分析工具的直接链接" title="基因组分析工具的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-bwa-mem2">1. BWA-MEM2<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-bwa-mem2" class="hash-link" aria-label="1. BWA-MEM2的�直接链接" title="1. BWA-MEM2的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 比对</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">bwa-mem2 mem -t 16 ref.fa read1.fq read2.fq &gt; aligned.sam</span><br></div></code></pre></div></div>
<p><strong>优点</strong>：</p>
<ul>
<li class="">比 BWA 快 2-3 倍</li>
<li class="">结果一致</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-gatk">2. GATK<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-gatk" class="hash-link" aria-label="2. GATK的直接链接" title="2. GATK的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 变异检测</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">gatk HaplotypeCaller \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  -R reference.fasta \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  -I input.bam \</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  -O output.vcf</span><br></div></code></pre></div></div>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">变异检测</li>
<li class="">基因分型</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-samtools">3. Samtools<a href="https://biof3.com/blog/bioinformatics-tools-2024#3-samtools" class="hash-link" aria-label="3. Samtools的直接链接" title="3. Samtools的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 排序</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">samtools sort -@ 8 -o sorted.bam input.bam</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 索引</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">samtools index sorted.bam</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 统计</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">samtools flagstat sorted.bam</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="数据可视化">数据可视化<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96" class="hash-link" aria-label="数据可视化的直接链接" title="数据可视化的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-ggplot2-r">1. ggplot2 (R)<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-ggplot2-r" class="hash-link" aria-label="1. ggplot2 (R)的直接链接" title="1. ggplot2 (R)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">library(ggplot2)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">ggplot(data, aes(x=UMAP_1, y=UMAP_2, color=cluster)) +</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  geom_point(size=0.5) +</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  theme_minimal() +</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  labs(title="UMAP Visualization")</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-matplotlib--seaborn-python">2. matplotlib / seaborn (Python)<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-matplotlib--seaborn-python" class="hash-link" aria-label="2. matplotlib / seaborn (Python)的直接链接" title="2. matplotlib / seaborn (Python)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> matplotlib</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">pyplot </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> plt</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> seaborn </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> sns</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sns</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">set_style</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">"whitegrid"</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">figure</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">figsize</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">(</span><span class="token number" style="color:#36acaa">10</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">8</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">sns</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">scatterplot</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">data</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">df</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> x</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'UMAP_1'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> y</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'UMAP_2'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> hue</span><span class="token operator" style="color:#393A34">=</span><span class="token string" style="color:#e3116c">'cluster'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">title</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'UMAP Visualization'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">plt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">show</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-igv-基因组浏览器">3. IGV (基因组浏览器)<a href="https://biof3.com/blog/bioinformatics-tools-2024#3-igv-%E5%9F%BA%E5%9B%A0%E7%BB%84%E6%B5%8F%E8%A7%88%E5%99%A8" class="hash-link" aria-label="3. IGV (基因组浏览器)的直接链接" title="3. IGV (基因组浏览器)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<ul>
<li class="">可视化比对结果</li>
<li class="">查看变异位点</li>
<li class="">支持多种数据格式</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="工作流管理">工作流管理<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E5%B7%A5%E4%BD%9C%E6%B5%81%E7%AE%A1%E7%90%86" class="hash-link" aria-label="工作流管理的直接链接" title="工作流管理的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-nextflow">1. Nextflow<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-nextflow" class="hash-link" aria-label="1. Nextflow的直接链接" title="1. Nextflow的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-groovy codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-groovy codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">process ALIGN {</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    input:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    tuple val(sample_id), path(reads)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    output:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    path "${sample_id}.bam"</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    script:</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    """</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    bwa mem ref.fa ${reads} | samtools sort -o ${sample_id}.bam</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    """</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">}</span><br></div></code></pre></div></div>
<p><strong>优点</strong>：</p>
<ul>
<li class="">可重复性</li>
<li class="">可扩展性</li>
<li class="">容器支持</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-snakemake">2. Snakemake<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-snakemake" class="hash-link" aria-label="2. Snakemake的直接链接" title="2. Snakemake的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">rule align</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token builtin">input</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token string" style="color:#e3116c">"data/{sample}.fastq"</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    output</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token string" style="color:#e3116c">"results/{sample}.bam"</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    shell</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token string" style="color:#e3116c">"bwa mem ref.fa {input} | samtools sort -o {output}"</span><br></div></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="云计算平台">云计算平台<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E4%BA%91%E8%AE%A1%E7%AE%97%E5%B9%B3%E5%8F%B0" class="hash-link" aria-label="云计算平台的直接链接" title="云计算平台的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-google-colab">1. Google Colab<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-google-colab" class="hash-link" aria-label="1. Google Colab的直接链接" title="1. Google Colab的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<p><strong>优点</strong>：</p>
<ul>
<li class="">免费 GPU</li>
<li class="">无需配置</li>
<li class="">易于分享</li>
</ul>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">学习和教学</li>
<li class="">小规模分析</li>
<li class="">快速原型</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-terra-broad-institute">2. Terra (Broad Institute)<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-terra-broad-institute" class="hash-link" aria-label="2. Terra (Broad Institute)的直接链接" title="2. Terra (Broad Institute)的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<p><strong>优点</strong>：</p>
<ul>
<li class="">集成工作流</li>
<li class="">数据管理</li>
<li class="">协作功能</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-aws--gcp">3. AWS / GCP<a href="https://biof3.com/blog/bioinformatics-tools-2024#3-aws--gcp" class="hash-link" aria-label="3. AWS / GCP的直接链接" title="3. AWS / GCP的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<p><strong>适用场景</strong>：</p>
<ul>
<li class="">大规模计算</li>
<li class="">生产环境</li>
<li class="">企业应用</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="数据库和资源">数据库和资源<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E6%95%B0%E6%8D%AE%E5%BA%93%E5%92%8C%E8%B5%84%E6%BA%90" class="hash-link" aria-label="数据库和资源的直接链接" title="数据库和资源的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-ncbi-geo">1. NCBI GEO<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-ncbi-geo" class="hash-link" aria-label="1. NCBI GEO的直接链接" title="1. NCBI GEO的直接链接" translate="no">​</a></h3>
<ul>
<li class="">基因表达数据</li>
<li class="">公共数据集</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-ucsc-genome-browser">2. UCSC Genome Browser<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-ucsc-genome-browser" class="hash-link" aria-label="2. UCSC Genome Browser的直接链接" title="2. UCSC Genome Browser的直接链接" translate="no">​</a></h3>
<ul>
<li class="">基因组注释</li>
<li class="">可视化工具</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-ensembl">3. Ensembl<a href="https://biof3.com/blog/bioinformatics-tools-2024#3-ensembl" class="hash-link" aria-label="3. Ensembl的直接链接" title="3. Ensembl的直接链接" translate="no">​</a></h3>
<ul>
<li class="">基因组数据</li>
<li class="">变异数据</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-human-cell-atlas">4. Human Cell Atlas<a href="https://biof3.com/blog/bioinformatics-tools-2024#4-human-cell-atlas" class="hash-link" aria-label="4. Human Cell Atlas的直接链接" title="4. Human Cell Atlas的直接链接" translate="no">​</a></h3>
<ul>
<li class="">单细胞数据</li>
<li class="">细胞图谱</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="容器技术">容器技术<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E5%AE%B9%E5%99%A8%E6%8A%80%E6%9C%AF" class="hash-link" aria-label="容器技术的直接链接" title="容器技术的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-docker">1. Docker<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-docker" class="hash-link" aria-label="1. Docker的直接链接" title="1. Docker的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 运行容器</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">docker run -it biocontainers/seurat:latest R</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 构建镜像</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">docker build -t my-analysis .</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-singularity">2. Singularity<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-singularity" class="hash-link" aria-label="2. Singularity的直接链接" title="2. Singularity的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐</p>
<p><strong>优点</strong>：</p>
<ul>
<li class="">HPC 友好</li>
<li class="">无需 root 权限</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="版本控制">版本控制<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6" class="hash-link" aria-label="版本控制的直接链接" title="版本控制的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="git--github">Git + GitHub<a href="https://biof3.com/blog/bioinformatics-tools-2024#git--github" class="hash-link" aria-label="Git + GitHub的直接链接" title="Git + GitHub的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain"># 初始化</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">git init</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 提交</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">git add .</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">git commit -m "Add analysis script"</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"># 推送</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">git push origin main</span><br></div></code></pre></div></div>
<p><strong>最佳实践</strong>：</p>
<ul>
<li class="">使用 .gitignore 忽略大文件</li>
<li class="">写清晰的 commit message</li>
<li class="">使用分支管理功能</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="文档工具">文档工具<a href="https://biof3.com/blog/bioinformatics-tools-2024#%E6%96%87%E6%A1%A3%E5%B7%A5%E5%85%B7" class="hash-link" aria-label="文档工具的直接链接" title="文档工具的直接链接" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-jupyter-notebook">1. Jupyter Notebook<a href="https://biof3.com/blog/bioinformatics-tools-2024#1-jupyter-notebook" class="hash-link" aria-label="1. Jupyter Notebook的直接链接" title="1. Jupyter Notebook的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<ul>
<li class="">交互式分析</li>
<li class="">代码和文档结合</li>
<li class="">易于分享</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-r-markdown">2. R Markdown<a href="https://biof3.com/blog/bioinformatics-tools-2024#2-r-markdown" class="hash-link" aria-label="2. R Markdown的直接链接" title="2. R Markdown的直接链接" translate="no">​</a></h3>
<p><strong>推荐指数</strong>: ⭐⭐⭐⭐⭐</p>
<div class="language-r codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-r codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">---</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">title: "分析报告"</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">output: html_document</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">---</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">## 数据加载</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">```{r}</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">library(Seurat)</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">data &lt;- readRDS("data.rds")</span><br></div></code></pre></div></div>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">### 3. Quarto</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">**推荐指数**: ⭐⭐⭐⭐</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- 支持多种语言</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- 现代化的文档系统</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- 丰富的输出格式</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">## 学习资源</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">### 在线平台</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- **BioF3**: 本站教程</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- **Coursera**: 生物信息学课程</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- **edX**: 数据科学课程</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">### 社区</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- **Biostars**: 问答社区</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- **Stack Overflow**: 编程问题</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- **GitHub**: 开源项目</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">## 工具选择建议</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">### 初学者</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">1. **编程环境**: Conda + RStudio</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">2. **单细胞分析**: Seurat</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">3. **可视化**: ggplot2</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">4. **文档**: R Markdown</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">### 进阶用户</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">1. **环境管理**: Mamba + renv</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">2. **工作流**: Nextflow</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">3. **容器**: Docker</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">4. **版本控制**: Git</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">### 专业用户</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">1. **云计算**: AWS / GCP</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">2. **大规模分析**: Spark + Dask</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">3. **自动化**: CI/CD</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">4. **监控**: 日志和性能分析</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">## 总结</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">选择合适的工具取决于：</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">1. **项目需求**：数据规模、分析类型</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">2. **个人偏好**：R vs Python</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">3. **团队协作**：统一工具栈</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">4. **计算资源**：本地 vs 云端</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">建议：</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- 从基础工具开始</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- 逐步扩展工具集</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- 关注新兴工具</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">- 保持学习态度</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">---</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">如需补充工具或更新版本信息，欢迎通过 GitHub Discussions 反馈。</span><br></div></code></pre></div></div>]]></content:encoded>
            <category>工具推荐</category>
            <category>经验分享</category>
        </item>
    </channel>
</rss>