windows ubuntu子系统,单细胞篇 1.cellranger安装与分析

这几天,我将单细胞测序在windows ubuntu子系统中跑了一遍,将过程分享給大家。

单细胞测序
conda create -n 10xdb     #创建环境 

conda activate 10xdb
conda install -c bioconda cellranger -y #失败,可能源中没有

wget -O cellranger-7.2.0.tar.gz "https://cf.10xgenomics.com/releases/cell-exp/cellranger-7.2.0.tar.gz?Expires=1702235980&Key-Pair-Id=APKAI7S6A5RYOXBWRPDA&Signature=c5ZVKLpCggvKE5O1o0pR7X-IfMXAkWZdQ9o-BipsD9PQJP31eIR2vpy2J2Ucd5faQyM0ZgjsO98qdF616z62D4SRvJDHeYkdQzGSmoZNzcWRLM1Getvend4HkSxPxjePb5MhvohRKsh9~wR2RVivMSZXpiy6zhH1efwcF4-PPmSwJshbhU3pI7InTt5qg92kasL3ekv~8D-scp3kAiFwm15d-ufvblrox8g4P9JQjFHHDjLuu0F~P8-Qc31lMdOe~5KoDCbkE~UI7sEUBJktD0MR~lZ620OcYKgvaqCB-wLgI3VI0rH8RPxYvbgUXryBHnB0wEmqjaessFlNvhql1Q__"#下载成功

tar -xzvf cellranger-7.2.0.tar.gz #tar 解压缩
vim ~/.bashrc
export PATH="/mnt/h/softwore/cellranger-7.2.0/bin/:$PATH" ,source ~/.bashr
c,#成功

#下载人源比对基因组
wget "https://cf.10xgenomics.com/supp/cell-exp/refdata-gex-GRCh38-2020-A.tar.gz" #这里下载太慢
在windows环境中下载
md5sum refdata-gex-GRCh38-2020-A.tar.gz
tar -xzvf refdata-gex-GRCh38-2020-A.tar.gz

mkdir 1.sra 2.raw_fastq 3.cellranger,cd 1.sra,touch download_file, #创建目录,创建文件。

vim download_file #编辑文件,文件名。
SRR7722941
SRR7722942

cat download_file |while read id;do (prefetch $id &);done #NCBI下载单细胞数据。下载方法和软件可见,最好早上下载。

3.windows下Ubuntu,sratoolkit软件,从ncbi的sra数据库下载数据。_sratools下载数据-CSDN博客

下载完数据后,将SRR数据转为fastq格式。

ls SRR* | while read id;do ( nohup fasterq-dump -O ./ --split-files -e 6 ./$id --include-technical & );done

#使用"ls SRR*"查找以"SRR"开头的文件,然后使用"while read id"逐行读取这些文件名,对每个文件执行以下操作:使用fasterq-dump命令下载SRA文件,将其转换成FASTQ格式,并将结果保存在当前目录下。使用--split-files选项将每个样本的双端序列拆分成两个文件。使用-e 6选项指定最大重试次数为6。使用--include-technical选项包括技术序列。使用&符号将每个命令放入后台执行,以便同时处理多个文件,加快处理速度。

 #对10X的fq文件运行CellRangerd的counts流程,我们只做一个文件,首先,我们先改名。

mv SRR7722937_1.fastq.gz SRR7722937_S1_L001_I1_001.fastq.gz,

mv SRR7722937_2.fastq.gz SRR7722937_S1_L001_R1_001.fastq.gz,

mv SRR7722937_3.fastq.gz SRR7722937_S1_L001_R2_001.fastq.gZ

#每个SRR分出三个fastq文件,查阅资料是

  • SRR7722941_S1_L001_I1_001.fastq:这是Index序列文件,包含了每个序列的索引信息。
  • SRR7722941_S1_L001_R1_001.fastq:这是Read 1序列文件,包含了每个序列的第一部分。
  • SRR7722941_S1_L001_R2_001.fastq:这是Read 2序列文件,包含了每个序列的第二部分。

​​​​​​​#接下来运行Cellranger count流程

ref=/mnt/h/db/cellranger.db/refdata-gex-GRCh38-2020-A
id=SRR7722941

cellranger count --id=$id \
--transcriptome=$ref \
--fastqs=/mnt/h/sxfx/2023.1210.db/2.raw_fastq \
--sample=$id \
--nosecondary \
--localmem=15 \
--localcores=15

  • cellranger count:这是Cell Ranger软件的一个子命令,用于对单细胞RNA测序数据进行计数。

  • --id=$id:指定输出结果的唯一标识符,通常是分析的样本名称或编号,指定输出文件夹的名字。

  • --transcriptome=$ref:指定参考转录组的路径或者名称。这个参数告诉Cell Ranger在分析中使用哪个转录组参考序列。

  • --fastqs=/mnt/h/sxfx/2023.1210.db/2.raw_fastq:指定原始FASTQ文件的路径。这个参数告诉Cell Ranger去哪里查找原始的测序数据。

  • --sample=$id:指定样本名称或编号。这个参数用于告诉Cell Ranger如何标识分析中的每个样本。

  • --nosecondary:这个参数告诉Cell Ranger在对数据进行比对和计数时不考虑次要的比对结果。次要比对结果是指在一个位置有多个可能的比对结果时,除了最佳的比对结果外的其他比对结果。

  • --localmem=15:指定本地内存的使用量,单位为GB。这个参数告诉Cell Ranger在运行过程中最多可以使用多少内存。

  • --localcores=15:指定本地CPU核心数。这个参数告诉Cell Ranger在运行过程中最多可以使用多少CPU核心。

#最终结果在outs中

结果解读(参考生信技能树Jimmy的帖子):

  • web_summary.html:必看,官方说明 summary HTML file ,包括许多QC指标,预估细胞数,比对率等;

  • metrics_summary.csv:CSV格式数据摘要,可以不看;

  • possorted_genome_bam.bam:比对文件,用于可视化比对的reads和重新创建FASTQ文件,可以不看;

  • possorted_genome_bam.bam.bai:索引文件;

  • filtered_gene_bc_matrices:是重要的一个目录,下面又包含了 barcodes.tsv.gz、features.tsv.gz、matrix.mtx.gz,是下游Seurat、Scater、Monocle等分析的输入文件,是经过Cell Ranger过滤后构建矩阵所需要的所有文件;

  • filtered_feature_bc_matrix.h5:过滤掉的barcode信息HDF5 format,可以不看;

  • raw_feature_bc_matrix:原始barcode信息,未过滤的可以用于构建矩阵的文件,可以不看;

  • raw_feature_bc_matrix.h5:原始barcode信息HDF5 format,可以不看;

  • analysis:数据分析目录,下面又包含聚类clustering(有graph-based & k-means)、差异分析diffexp、主成分线性降维分析pca、非线性降维tsne,因为我们自己会走Seurat流程,所以不用看

  • molecule_info.h5:可用于整合多样本,使用cellranger aggr函数;

  • cloupe.cloupe:官方可视化工具Loupe Cell Browser 输入文件,无代码分析的情况下使用,会代码的同学通常用不到。

这是我最近跑的一个流程,说实在的,博大精深,以后我会看一些文献,分享一下,流程好跑,背景知识很难啊。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/818613.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用深度学习集成模型进行乳腺癌组织病理学图像分类

基于预训练的VGG16和VGG19架构训练了四种不同的模型(即完全训练的 VGG16、微调的 VGG16、完全训练的 VGG19 和微调的 VGG19 模型)。最初,我们对所有单独的模型进行了5倍交叉验证操作。然后,我们采用集成策略,取预测概率…

说说你对链表的理解?常见的操作有哪些?

一、是什么 链表(Linked List)是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的,由一系列结点(链表中每一个元素称为结点)组成 每个结点包括两个部分&…

软件测试面试题,建议收藏。。。

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 1、B/S架构和C/S架构区别 B/S 只需要有操作系统和浏览器就行,可以实现跨平台&#x…

在Qt中为QWidget创建鼠标点击处理

当创建自定义控件MembershipCard时,需要继承QWidget类,并重写其鼠标点击事件。下面是完整的代码示例,包括前置声明、引入头文件以及详细解释: // membershipcard.h #ifndef MEMBERSHIPCARD_H #define MEMBERSHIPCARD_H#include &…

如何编写易于访问的技术文档 - 最佳实践与示例

当你为项目或工具编写技术文档时,你会希望它易于访问。这意味着它将为全球网络上的多样化受众提供服务并可用。 网络无障碍旨在使任何人都能访问网络内容。设计师、开发人员和撰写人员有共同的无障碍最佳实践。本文将涵盖一些创建技术内容的最佳实践。 &#xff0…

JS-30-async函数

上一节说,JavaScript异步操作需要通过Promise实现,一个Promise对象在操作网络时是异步的,等到返回后再调用回调函数,执行正确就调用then(),执行错误就调用catch()。 虽然异步实现了,不会让用户感觉到页面“…

2023年图灵奖揭晓,你怎么看?【模板】

2023年图灵奖揭晓,你怎么看? 2023年图灵奖,最近刚刚颁给普林斯顿数学教授 Avi Wigderson!作为理论计算机科学领域的领军人物,他对于理解计算中的随机性和伪随机性的作用,作出了开创性贡献。 提醒&#xff…

07 SQL进阶 -- 集合运算 -- 表的加减法

1. 表的加减法 1.1 什么是集合运算 集合在数学领域表示“各种各样的事物的总和”, 在数据库领域表示记录的集合. 具体来说,表、视图和查询的执行结果都是记录的集合, 其中的元素为表或者查询结果中的每一行。 在标准 SQL 中, 分别对检索结果使用 UNION, INTERSECT, EXCEPT 来…

构造JSON格式

后端构造JSON格式传给前端 方式一 后端 传递可迭代对象 记住,传json格式,如果你要用for循环 那么你的对象一定要是可迭代的对象 如果你单构造个类过去,你用for是肯定循环不了的,你必须使用List这种可以迭代的对象,才…

C# 中,可以使用以下方法优化 List 的 ForEach 循环速度

在 C# 中,可以使用以下方法优化 List 的 ForEach 循环速度: 使用 Dictionary 或 Hashtable 代替 List:在需要频繁查找元素时,Dictionary 或 Hashtable 的查找速度通常比 List 快。这是因为它们通过哈希码直接访问元素,…

【企业场景】设计模式重点解析

设计模式 在平时的开发中,涉及到设计模式的有两块内容: 我们平时使用的框架(比如spring、mybatis等)我们自己开发业务使用的设计模式。 在平时的业务开发中,其实真正使用设计模式的场景并不多,虽然设计号…

OpenHarmony实战开发-MpChart图表实现案例。

介绍 MpChart是一个包含各种类型图表的图表库,主要用于业务数据汇总,例如销售数据走势图,股价走势图等场景中使用,方便开发者快速实现图表UI。本示例主要介绍如何使用三方库MpChart实现柱状图UI效果。如堆叠数据类型显示&#xf…

CAP5_Monday

A Set to Max (Easy Version) 给定数组 a 和 b,可以执行以下操作任意次 : 让 a l ∼ a r a_l\sim a_r al​∼ar​ 中的所有所有元素变成 a i a_i ai​ ( l ≤ i ≤ r ) (l\leq i\leq r) (l≤i≤r), 其中 1 ≤ l ≤ r ≤ n 1\leq l \leq r \leq n 1≤…

C#基础|数据类型、变量

哈喽,你好啊,我是雷工! 01 数据类型 数据类型是为了方便存储数据的,为了将数据按照不同的分类存储,所以引入数据类型。这个在PLC中已经很熟悉了。 数据类型的作用:就是为了更好地管理内存,为…

嵌入式|蓝桥杯STM32G431(HAL库开发)——CT117E学习笔记13:RTC实时时钟

系列文章目录 嵌入式|蓝桥杯STM32G431(HAL库开发)——CT117E学习笔记01:赛事介绍与硬件平台 嵌入式|蓝桥杯STM32G431(HAL库开发)——CT117E学习笔记02:开发环境安装 嵌入式|蓝桥杯STM32G431(…

基于Pytorch框架的CNN-LSTM模型在CWRU轴承故障诊断的应用

目录 1. 简介 2. 方法 2.1数据集 2.2模型架构 1. 简介 CWRU轴承故障诊断是工业领域一个重要的问题,及早发现轴承故障可以有效地减少设备停机时间和维修成本,提高生产效率和设备可靠性。传统的基于信号处理和特征提取的方法通常需要手工设计特征&…

基于Python长时间序列遥感数据处理及在全球变化、物候提取、植被变绿与固碳分析、生物量估算与趋势分析

原文链接:基于Python长时间序列遥感数据处理及在全球变化、物候提取、植被变绿与固碳分析、生物量估算与趋势分析https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247601336&idx4&sn143be5669da8ad336a455a4cca3d4b6a&chksmfa820d5fcdf584491…

【机器学习】机器学习创建算法第6篇:线性回归,学习目标【附代码文档】

机器学习(算法篇)完整教程(附代码资料)主要内容讲述:机器学习算法课程定位、目标,K-近邻算法定位,目标,学习目标,1 什么是K-近邻算法,1 Scikit-learn工具介绍,2 K-近邻算法API。K-近邻算法,1.4 …

java的文件字节输出和输入流

字符集: public class test1 {public static void main(String[] args) throws UnsupportedEncodingException {//1:编码:String data"b你a2";byte[] bytes data.getBytes();//默认使用(UTF-8)进行编码&…

【七 (1)指标体系建设-构建高效的故障管理指标体系】

目录 文章导航一、故障概述1、故障:2、故障管理: 二、指标体系概述1、指标2、指标体系 三、指标体系构建难点1、管理视角2、业务视角3、技术视角 四、指标体系构建原则1、与战略目标对齐2、综合和平衡3、数据可获得性4、可操作性5、具体和可衡量6、参与和…