sc-atac的基礎知識(0)

sc-atac的基礎知識

**fragment**是ATAC-seq實驗中的一個重要概念,它指的是通過Tn5轉座酶對DNA分子進行酶切,然后經由雙端測序得到的序列。
在這里插入圖片描述
根據Tn5插入導致的偏移從read比對得到的位置推斷出fragment的起始和結束位置。根據之前的報道,Tn5轉座酶以同源二聚體的形式結合到DNA上,在兩個Tn5分子間隔著9-bp的DNA序列。根據這個情況,每個Tn5同源二聚體的結合事件會產生2個Insertions,中間隔著9bp。因此,真實的"開放"位置的中心在Tn5二聚體的正中間,而不是Tn5的插入位置。為了盡可能的還原真實情況,我們對Tn5的Insertions進行了校正,即正鏈的插入結果往右移動4bp(+4 bp), 負鏈的插入結果往左偏移5bp(-5 bp)。這個和最早提出的ATAC-seq里的描述是一致的。因此,在ArchR中,"fragment"指的是一個table或genomic ranges對象, 記錄在染色體上,經過偏移校正后的單堿基起始位置,以及經過偏移校正后單堿基結束位置,每個fragment都會對應唯一的細胞條形碼。類似的,"Insertions"這得是偏移校正后的單堿基位置,它位于開放位置的正中心。(https://www.jianshu.com/p/f7975da8e1e8)

  1. Tn5 轉座酶(綠色剪刀圖標)只能切割 開放染色質(Open chromatin,線條松散)。
  2. 在封閉染色質(Closed chromatin,線條緊密)處,Tn5 無法進入,因此不切割。
  3. Tn5 在開放區域切割后,插入測序接頭(adapters,灰色小條),形成 可測序的 DNA 片段
  4. 這些片段經過 PCR 擴增 & 測序,最終得到 開放染色質信號峰
    “只有染色質松開的區域才會被 Tn5 切割并變成可測序的 ATAC 片段。”

Tn5 轉座酶是同源二聚體

什么是同源二聚體,組蛋白是八聚體嗎?兩者什么區別

一句話區分:

  • 同源二聚體 = 2 個相同蛋白抱在一起;
  • 組蛋白八聚體 = 8 個不同組蛋白(2×H2A、2×H2B、2×H3、2×H4)按固定比例拼成核小體核心。

1 同源二聚體(homo-dimer)

  • 定義:由 兩條完全相同的肽鏈/蛋白 非共價結合而成的功能單位。
  • ATAC-seq 場景:Tn5 轉座酶只有 兩條一模一樣的 Tn5 分子 同時結合 DNA,才能切割并插入接頭

2 組蛋白八聚體(histone octamer)

  • 組成
    (H2A-H2B) × 2  
    (H3-H4) × 2  
    共 8 條肽鏈
    
  • 功能:繞成核小體核心,把 DNA 纏成“線軸”。

3 核心差異

維度同源二聚體組蛋白八聚體
鏈數2 條相同蛋白8 條不同蛋白
蛋白種類1 種4 種(H2A、H2B、H3、H4)
生物學角色酶活性單位(如 Tn5)染色質結構骨架
是否完全相同? 是? 否

根據之前的報道,Tn5轉座酶以同源二聚體的形式結合到DNA上,在兩個Tn5分子間隔著9-bp的DNA序列。什么意思
意思是:
Tn5 轉座酶只有兩條完全相同的酶鏈(同源二聚體)同時抓住 DNA,它們之間被 9 個堿基對(9 bp)的 DNA 片段隔開

  • 正鏈酶切在 +4 bp 處
  • 負鏈酶切在 -5 bp 處
    校正后,這兩個切點中間正好留下 9 bp 的“間隙”,真正的開放染色質中心就在這段間隙的正中間。

根據這個情況,每個Tn5同源二聚體的結合事件會產生2個Insertions,中間隔著9bp。什么是Insertions
在 ATAC-seq 里,Insertion 指的是 Tn5 轉座酶在 DNA 上實際切割并把測序接頭“插入”進去的那一個單堿基點

  • 一個 Tn5 同源二聚體結合事件會 同時切兩下,因此 產生 2 個這樣的插入點(兩條鏈各一個)
  • 這兩個插入點之間正好隔著 9 bp 的 DNA 片段。

Insertions與Fragment的區別

  • Insertions單個堿基點(Tn5 二聚體中心)
    例如 chr1:1000(正鏈 +4 校正后)。

  • Fragment一條線段(起點—終點)
    例如 chr1:1000–1001(起點 1000,終點 1001),長度 1 bp,正好以 Insertion 點為中心

因此,Insertion 位于 Fragment 的正中間,兩者校正后的坐標只差一個“線段寬度”,方向相反的兩端各 1 bp。


為什么使用ArchR

在這里插入圖片描述

  • 行標題:表示不同的功能模塊,如數據導入(Data import)、雙細胞去除(Doublet Removal)、基因得分(Gene Scores)、聚類(Clustering)、標準ATAC-seq分析(Standard ATAC-seq Analyses)、數據可視化(Data Visualization)和高級ATAC-seq分析(Advanced ATAC-seq Analyses)等。

ArchR通過優化數據結構降低了內存消耗,使用并行提高了運行速度,因此保證其性能優于其他同類型工具


什么是Arrow文件/ArchRProject

proj <- ArchRProject(ArrowFiles = ArrowFiles,genomeAnnotation = genomeAnnotation,geneAnnotation = geneAnnotation,copyArrows = TRUE
)
  1. Arrow 文件的作用
  • Arrow 文件:是 ArchR 項目中用于存儲每個獨立樣本所有相關信息的文件格式。這些信息包括元數據(如樣本名稱、實驗條件等)、開放的染色質片段(fragments)以及數據矩陣等。
  • 獨立樣本:每個 Arrow 文件對應一個獨立樣本,這個樣本最好是詳盡的分析單元,例如在特定實驗條件下的單個重復實驗。
  1. Arrow 文件的內容
  • 文件內容:Arrow 文件記錄了每個樣本的所有相關信息,這些信息對于后續的分析至關重要。
  • 文件路徑:Arrow 文件實際上是存儲在磁盤上的 HDF5 文件,而不是內存中的 R 對象。
    ·Arrow 文件:存儲在磁盤上的文件,使用 HDF5 格式,可以存儲大量數據,并且支持快速讀取和寫入。
    ·R 對象:存儲在內存中的數據結構,用于數據處理和分析,但不適合存儲大量數據,因為內存容量有限。
  1. ArchR 處理 Arrow 文件的方式
  • 編輯和更新:在創建 Arrow 文件以及進行一些附加分析時,ArchR 會編輯和更新相應的 Arrow 文件,添加額外的信息層。
  • 高效訪問:通過使用 ArchRProject 對象,ArchR 可以將多個 Arrow 文件關聯到一個分析框架中,從而確保在 R 中能高效訪問這些文件。
  1. ArchRProject 對象的作用
  • 內存占用:ArchRProject 對象本身占用的內存不多,因為它主要負責關聯磁盤上的 Arrow 文件,而不是存儲文件內容本身。
  • 分析框架:ArchRProject 對象將多個 Arrow 文件關聯到一個分析框架中,使得在 R 中可以高效地訪問和處理這些文件。
  1. 總結
  • Arrow 文件:存儲每個樣本所有相關信息的 HDF5 文件,存儲在磁盤上。
  • ArchRProject 對象:用于關聯多個 Arrow 文件,使其在 R 中高效訪問,占用內存少。
  • 處理流程:在創建和分析過程中,ArchR 會更新 Arrow 文件,添加額外信息層,以支持復雜的數據分析。

通過這種方式,ArchR 能夠高效地處理和分析大量的單細胞 ATAC-seq 數據,同時保持對內存的低占用。

這張圖展示了 ArchR 項目中== Arrow 文件==和 ArchRProject 對象的結構和內容,以及它們在存儲和內存中的不同格式。

左側:Arrow 文件(存儲在磁盤上)

  • 格式:HDF5 格式,文件體積較大。
  • 內容
    • Metadata(元數據)
      • 樣本中心元數據(Sample-centric Metadata)
      • 細胞中心元數據(Cell-centric Metadata)
      • 基因組注釋(Genome Annotation,DNA)
    • Sequence-derived data(序列衍生數據)
      • 可訪問區域(Accessible Regions,Fragments)
      • 500 bp 的片段(Tiles)
      • 基因得分矩陣(Gene Score Matrix)
      • 峰值(Peaks)
      • 峰值計數矩陣(Peak Count Matrix)
      • 轉錄因子偏差矩陣(TF Deviation Matrix)
      • 細胞類型矩陣(Cell Type Matrix)
右側:ArchRProject 對象(加載到內存中)
  • 格式:RDS 格式,文件體積較小。
  • 內容
    • Metadata(元數據)
      • 樣本中心元數據(Sample-centric Metadata)
      • 細胞中心元數據(Cell-centric Metadata)
      • 基因組注釋(Genome Annotation,DNA 和轉錄本)
    • High-level Project Data(高級項目數據)
      • 降維/嵌入(Dim. Reduction / Embeddings,如 LSI、t-SNE、UMAP)
      • 峰值集合(Peak Set,包括染色體位置、起始、終止位置)
      • 峰值注釋(Peak Annotation,包括 Motifs、SNPs、Features)

總結

  • Arrow 文件存儲了單細胞 ATAC-seq 數據的原始信息,包括元數據和序列衍生數據,文件體積較大,存儲在磁盤上。
  • ArchRProject 對象是一個內存中的對象,包含了 Arrow 文件的索引和一些高級分析數據,文件體積較小,便于在內存中快速訪問和處理。
  • 通過使用 ArchRProject 對象,可以高效地訪問和管理磁盤上的 Arrow 文件,同時利用內存中的對象進行快速分析。

有一些操作會直接修改Arrow文件,而一些操作會先作用于ArchRproject,接著反過來更新每個相關Arrow文件。因為Arrow文件是以非常大的HDF5格式存放,所以ArchR的get-er函數通過和ArchRProject進行交互獲取數據,而add-er函數既能直接在Arrow文件中添加數據,也能直接在ArchRpoject里添加數據,或者通過ArchRpoject向Arrow文件添加數據。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/91656.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/91656.shtml
英文地址,請注明出處:http://en.pswp.cn/web/91656.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python從入門到精通計劃Day01: Python開發環境搭建指南:從零開始打造你的“數字廚房“

目錄一、配置你的「魔杖」&#xff1a;Python 3.x安裝1.1 跨平臺安裝指南1.2 驗證你的「法力值」二、選擇你的「魔法工坊」&#xff1a;IDE配置2.1 VS Code&#xff1a;輕量級實驗室2.2 PyCharm&#xff1a;專業級法師塔三、施展第一個「魔咒」&#xff1a;Hello World3.1 基礎…

MCP Agent 工程框架Dify初探

目錄引言一、Dify是什么二、為什么使用Dify三、使用Dify要怎么做1、聊天助手2、Agent2.1 Function calling&#xff08;函數調用&#xff09;和 ReAct 兩種推理模式的區別2.1.1 技術本質與工作流程對比2.1.2 優缺點對比2.1.3 適用場景與選擇依據2.2 LangChain 的 Agent 實現原理…

無人機光伏巡檢漏檢率↓78%!陌訊多模態融合算法實戰解析

原創聲明本文為原創技術解析&#xff0c;核心技術參數與架構設計引用自《陌訊技術白皮書》&#xff0c;轉載請注明來源。一、行業痛點&#xff1a;無人機光伏巡檢的 "識別困境"光伏電站的大規模鋪設推動了無人機巡檢的普及&#xff0c;但實際作業中仍面臨三大技術瓶頸…

機動車占道識別準確率提升 29%:陌訊動態輪廓感知算法實戰解析

原創聲明本文為原創技術解析&#xff0c;核心技術參數與架構設計引用自《陌訊技術白皮書》&#xff0c;禁止未經授權的轉載與改編。一、行業痛點&#xff1a;機動車占道治理的技術瓶頸城市交通監控中&#xff0c;機動車占用應急車道、公交車道等違規行為已成為影響通行效率與交…

UNet改進(29):記憶增強注意力機制在UNet中的創新應用-原理、實現與性能提升

記憶增強注意力機制概述 記憶增強注意力是一種結合了外部記憶模塊的注意力機制,它使神經網絡能夠存儲和檢索長期知識,而不僅僅是依賴當前的輸入特征。這種機制特別適合需要保持長期依賴關系的任務,如醫學圖像分割,其中模型需要記住不同樣本中出現的常見模式。 核心組件 記…

使用Python開發Ditto剪貼板數據導出工具

前言在日常工作中&#xff0c;我們經常需要處理大量的剪貼板數據。Ditto作為一款優秀的剪貼板管理軟件&#xff0c;幫助我們保存了豐富的歷史記錄。但有時我們需要將這些數據導出進行進一步分析或備份&#xff0c;而Ditto本身并沒有提供直觀的批量導出功能。C:\pythoncode\new\…

【人工智能】提示詞設計原則:簡潔性、明確性、具體性如何平衡?

提示詞設計原則&#xff1a;簡潔性、明確性、具體性如何平衡&#xff1f;1. 提示詞設計三大原則的核心內涵1.1 簡潔性1.1.1 定義用最少的文字傳遞核心信息&#xff0c;避免冗余和不必要的描述。比如 “寫 3 個春天的成語” 比 “我想讓你寫出來 3 個和春天有關系的成語詞語” 更…

JS的作用域

文章目錄一、為什么需要作用域&#xff1f;二、什么是 JS 作用域&#xff1f;2.1 什么是詞法作用域和動態作用域&#xff1f;1. 詞法作用域&#xff08;Lexical Scpoe&#xff09;2. 動態作用域2.2 JS 的作用域2.3 JS 作用域的分類1. 全局作用域2. 模塊作用域3. 函數作用域4. 塊…

OLTP,OLAP,HTAP是什么,數據庫該怎么選

目錄 OLTP&#xff08;Online Transaction Processing&#xff09;聯機事務處理 OLAP&#xff08;Online Analytical Processing&#xff09;聯機分析處理 非實時OLAP 實時OLAP HTAP&#xff08;Hybrid Transactional/Analytical Processing&#xff09; OLAP 和 OLTP 數…

【前端】CSS Flexbox布局示例介紹

CSS Flexbox&#xff08;彈性盒子&#xff09;簡介 Flexbox 是一種一維布局模型&#xff0c;用于高效處理元素在容器內的空間分配、對齊和排序。它通過父容器&#xff08;flex container&#xff09;和子元素&#xff08;flex items&#xff09;的配合實現靈活響應式布局。核心…

Vue3核心語法基礎

一、為什么要學 Composition API&#xff1f;在以前我們寫代碼用Vue2寫&#xff1a;export default {data() {return { count: 0, msg: hello }},methods: {add() { this.count }},computed: {double() { return this.count * 2 }} }很明顯 一個功能被拆成三塊&#xff1a;data…

FSMC的配置和應用

一、FSMC 簡介與工作原理FSMC&#xff08;Flexible Static Memory Controller&#xff09;是 STM32 微控制器中用于與外部靜態存儲器&#xff08;如 SRAM、PSRAM、NOR Flash、LCD 等&#xff09;進行通信的一個外設模塊。1、支持的設備類型&#xff1a;SRAM / PSRAMNOR FlashNA…

Linux I/O 系統調用完整對比分析

Linux I/O 系統調用完整對比分析 1. 概述 Linux 提供了豐富的 I/O 系統調用&#xff0c;每種都有其特定的用途和優勢。本文將詳細分析這些系統調用的特點、使用場景和性能特征。 2. 系統調用詳細對比 2.1 基本讀寫函數 pread/pwrite #include <unistd.h>// 位置指定…

TiDB集群部署

架構&#xff1a; tidb–3臺&#xff0c;pd–3臺&#xff0c;tikv–3臺 8c16g200g 1x2.2x.2x7.124 1x2.2x.2x7.148 1x2.2x.2x7.87 1x2.2x.2x7.93 1x2.2x.2x7.127 1x2.2x.2x7.104 pd-3臺 4c8g100g 1x2.2x.2x7.143 1x2.2x.2x7.132 1x2.2x.2x7.91 1、下載安裝包 #注&#xff1a;我…

C#中對于List的多種排序方式

在 C# 中給 List<AI> 排序&#xff0c;只要 明確排序規則&#xff08;比如按某個字段、某幾個字段、或外部規則&#xff09;&#xff0c;就能用下面幾種常見寫法。下面全部基于這個示例類&#xff1a;public class AI {public int country; // 國家編號public int pr…

Spring框架中Bean的生命周期:源碼解析與最佳實踐

第1章&#xff1a;Spring Bean生命周期概述1.1 什么是Spring Bean生命周期&#xff1f;定義&#xff1a;Spring Bean生命周期是指從Bean的創建、初始化、使用到銷毀的完整過程&#xff0c;由Spring容器嚴格管理 。核心思想是Spring容器通過IoC&#xff08;控制反轉&#xff09;…

【51單片機6位數碼管密碼鎖】2022-10-15

緣由六位密碼器設計連接LED-嵌入式-CSDN問答 矩陣51單片機密碼鎖,回復:https://bbs.csdn.net/topics/392713242_智者知已應修善業的博客-CSDN博客 #include "REG52.h" unsigned char code smgduan[]{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x…

?我的第一個開源項目:躍動的心

還是一個編程初學者時&#xff0c;我懷著激動的心情完成了人生第一個開源項目——一個用HTML5 Canvas制作的動態跳動愛心效果。這個項目雖然簡單&#xff0c;卻讓我深刻體會到了開源分享的快樂和技術創造的魅力。 壹、項目靈感 這個項目的靈感來源于瀏覽網頁時&#xff0c;被各…

技術演進中的開發沉思-53 DELPHI VCL系列:windows的消息(下):TApplication窗體

今天我們梳理下關于TApplication的窗體消息下半部分的內容。前面也說過&#xff0c;在 Delphi 的世界里&#xff0c;TApplication 就像一位經驗豐富的總工程師&#xff0c;而主窗體則是它傾注心血打造的核心建筑。如果你第一次在實驗室里敲出 Delphi 代碼時&#xff0c;屏幕上彈…

cesium FBO(四)自定義相機渲染到Canvas(離屏渲染)

前面幾節的例子是將Cesium默認的相機渲染到紋理&#xff08;RTT&#xff09;或Canvas&#xff0c;這片文章講解如何將自定義的一個camera的畫面渲染到Canvas上&#xff0c;有了前面幾篇的基礎了&#xff0c;也能將自定義的畫面渲染紋理、也可以灰度處理&#xff0c;原理是一樣的…