单细胞转录组上游fasta文件处理
单细胞分析上游fasta文件处理
——基于cellranger与dropseqRunner
###如果测序文件由10X genomics平台产生,则采用cellranger count的基本流程进行fasta文件的上游处理;如果测序文件由dropseq平台产生,则采用dropseqRunner软件进行处理
一、cellranger配置
1、软件安装并查看帮助文档
#安装包下载
wget -O cellranger-7.1.0.tar.gz "https://cf.10xgenomics.com/releases/cell-exp/cellranger-7.1.0.tar.gz?Expires=1694703729&Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9jZi4xMHhnZW5vbWljcy5jb20vcmVsZWFzZXMvY2VsbC1leHAvY2VsbHJhbmdlci03LjEuMC50YXIuZ3oiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE2OTQ3MDM3Mjl9fX1dfQ__&Signature=YmIZ3TsEI7VxGNIY7SdL~8oH0jr7ktjMZ48HRiLDQfcYLN4YWcs5nk0CZeKkeemvygGK3VryeHnvZpA21r2jN2YKfSeAHC03t-aDKzjctzbPvnv9UbckvrOghyxW7mH14W7uzMJJ1C9PbBo869EDRH04vxfsYGFQONCxvb~iBamTU1ZJ-6etWVioLjzb7o4-Y3v4v46nw67qf2NaPTwNXr4PIA-vFdWe9v9YhQQM6VlHR8a5crTmaM39hGC~2PatW0qlEd-DsMHeeNb34~Gr5N8XNIHv6K1VcuMq8VobqLQKxeoz3obmA23~kWkPNOSZNCVXosd0p6Ok7fUHiVUt-Q__&Key-Pair-Id=APKAI7S6A5RYOXBWRPDA" &
#解压文件
tar -zxvf cellranger-7.0.1.tar.gz
#把cellranger的路径加到$PATH中方便调用
vi ~/.bashrc
export PATH=”/data5/tan/zengchuanj/Software/cellranger-7.1.0/bin:$PATH”
echo 'export PATH=/data5/tan/zengchuanj/Software/cellranger-7.1.0/:$PATH' >> ~/.bashrc
#更新系统配置文件
source ~/.bashrc
#查看cellranger使用说明
cellranger count --help
2、参考基因组下载
#人类参考基因组数据集
wget -o human.log https://cf.10xgenomics.com/supp/cell-exp/refdata-gex-GRCh38-2020-A.tar.gz &
tar -xvf refdata-gex-GRCh38-2020-A.tar.gz
#mouse参考基因组数据集下载
wget -o mouse.log https://cf.10xgenomics.com/supp/cell-exp/refdata-gex-mm10-2020-A.tar.gz &
tar -xvf refdata-gex-mm10-2020-A.tar.gz
#测试数据集下载
wget -o sample.log 'http://cf.10xgenomics.com/samples/cell-exp/2.1.0/neurons_900/neurons_900_fastqs.tar' &
tar -xvf neurons_900_fastqs.tar #解压
cellranger count --id=result --transcriptome=../refdata-gex-mm10-2020-A/ --fastqs=/neurons_900_fastqs --sample=neurons_900 --expect-cells=1000 --nosecondary
Attention:#count函数参数解释
cellranger count --id=sample \
--transcriptome=/opt/refdata-cellranger-GRCh38-1.2.0 \
--fastqs=/home/scRNA/runs/HAWT7ADXX/outs/fastq_path \
--sample=mysample \
--expect-cells=1000 \
--nosecondary
# id指定输出文件存放目录名
# transcriptome指定与CellRanger兼容的参考基因组
# fastqs指定mkfastq或者自定义的测序文件
# sample要和fastq文件的前缀中的sample保持一致,作为软件识别的标志
# expect-cells指定复现的细胞数量,这个要和实验设计结合起来
# nosecondary 只获得表达矩阵,不进行后续的降维、聚类和可视化分析(反正后续要走Seurat,为了节省计算资源,建议加上)
3、结果解读
Ref:https:/zhuanlan.zhihu.com/p/390516422
Outputs:
- Run summary HTML: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/web_summary.html
- Run summary CSV: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/metrics_summary.csv
- BAM: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/possorted_genome_bam.bam
- BAM index: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/possorted_genome_bam.bam.bai
- Filtered feature-barcode matrices MEX: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/filtered_feature_bc_matrix
- Filtered feature-barcode matrices HDF5: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/filtered_feature_bc_matrix.h5
- Unfiltered feature-barcode matrices MEX: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/raw_feature_bc_matrix
- Unfiltered feature-barcode matrices HDF5: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/raw_feature_bc_matrix_h5.h5
- Secondary analysis output CSV: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/analysis
- Per-molecule read information: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/molecule_info.h5
- Loupe Browser file: /data5/tan/zengchuanj/pipeline/cellranger/result/outs/cloupe.cloupe
- outs/raw_feature_bc_matrix: 这个文件夹包含原始的基因表达矩阵,每一行代表一个基因,每一列代表一个细胞。这个矩阵中的值表示每个细胞中每个基因的表达水平。这个矩阵没有经过任何的标准化或过滤。
- outs/filtered_feature_bc_matrix: 这个文件夹包含经过过滤后的基因表达矩阵。在这个矩阵中,已经去除了低质量的细胞和低表达的基因。这是进行后续分析的主要输入。此文件夹包含三个文件:barcodes.tsv.gz、features.tsv.gz和matrix.mtx.gz。这些文件包含了每个细胞的条形码、每个特征的名称和每个细胞中每个特征的计数。
- outs/metrics_summary.csv: 这个CSV文件包含了关于每个细胞和每个样本的一些质量控制指标,例如细胞计数、平均基因表达水平等。
- outs/web_summary.html: 这个HTML文件提供了一个交互式的可视化界面,用于查看分析的总结结果,包括细胞计数、质量控制指标、细胞类型聚类等。
- outs/cloupe.cloupe: 这是一个文件,可以用于在10x Genomics的Loupe浏览器中查看和分析单细胞数据。Loupe浏览器提供了丰富的数据可视化和分析功能。
二、dropseqRunner的配置
1、conda的安装
dropseqRunner是个依赖conda和python的环境,在安装前确保自己的服务器中有与之兼容的conda与python
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh
bash Anaconda3-5.3.1-Linux-x86_64.sh
2、Dropseq的安装
wget https://codeload.github.com/aselewa/dropseqRunner/zip/master
mv master master.zip
unzip master.zip
#创建dropseq运行的conda环境
conda env create -f environment.yaml
#每次运行dropseq前需要进行激活,不激活环境则无法调用snakemake
conda activate dropRunner
#编译,不编译无法出现主脚本
make
3、下载参考数据并构建比对索引
#这里以小鼠的为例
wget -o mm.log https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/001/635/GCF_000001635.27_GRCm39/GCF_000001635.27_GRCm39_genomic.fna.gz &
#安装处理gff文件软件
conda install gffread
#将gff文件转换为gtf文件
gffread GCF_000001635.27_GRCm39_genomic.gff -T -o mice.gtf
#建参考数据库
STAR --runThreadN 4 --runMode genomeGenerate --genomeDir reference/ --genomeFastaFiles GCF_000001635.27_GRCm39_genomic.fna --sjdbGTFfile mice.gtf
4、Dropseq使用方法
python /dropseqRunner-master/dropRunner.py --R1 SRR11799731_R1.fastq.gz --R2 SRR11799731_R2.fastq.gz --indices /dropseqRunner-master/db/reference --sample SRR11799731 --protocol drop
#主程序使用方法
#各个参数:
#R1 R2,分别是你的两个fastq文件
#--indices是刚才构建好的参考数据集
#--sample是样本前缀名
#运行完毕后用于Seurat的数据存在/sample/output/SRR11799731_0_Solo.out/Gene
三、Error自查
Attention error:主要是下载、安装、配置上的问题
1、 dropseqRunner下载问题
#下载dropseq
git clone git@github.com:aselewa/dropseqRunner.git
cd dropseqRunner
这个问题是关于使用Git克隆dropseqRunner时出现了权限拒绝错误。错误信息是“Permission denied (publickey)”。
这个错误通常是由于缺少SSH密钥或使用了错误的SSH密钥导致的。以下是一些可能的解决方法:
- 检查SSH密钥
在本地计算机上生成SSH密钥,并将公钥添加到GitHub帐户中。可以使用以下命令检查是否存在SSH密钥:
ls -al ~/.ssh
如果没有SSH密钥,请使用以下命令生成:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
然后将公钥添加到GitHub帐户中。
- 使用HTTPS URL
使用HTTPS URL而不是SSH URL来克隆dropseqRunner。使用以下命令:
git clone https://github.com/aselewa/dropseqRunner.git
这将使用HTTPS URL克隆`dropseqRunner`,而不需要SSH密钥。
- 检查GitHub帐户权限
确保你的GitHub帐户具有克隆dropseqRunner的权限。如果您没有访问权限,请联系仓库的所有者以获取访问权限。
Ps:如果这些都解决不了,建议开始摆烂
- wget登场
wget https://codeload.github.com/aselewa/dropseqRunner/zip/master


之前以为Github仓库的master分支基本上应该是提交代码的记录,实际master是个二进制文件,后续发现实际应该是个.zip文件。
2、dropseqRunner配置问题


这一问题主要是因为environment.yaml下载错误,重新下载安装即可。
单细胞转录组上游fasta文件处理的更多相关文章
- fasta文件拆分与合并
Linux中fasta文件的拆分与合并 FASTA文件的拆分: (1)如果从一个文件a提取第11至20个序列存到另一个文件b: awk -v RS='>' 'NR>1{i++}i>= ...
- python学习——读取染色体长度(七:读取fasta文件)
读取fasta文件genome_test.fa,并计算染色体总长,同时输出最长染色体编号.序列以及长度 fasta文件genom_test.fa的内容如下: >chr1ATATATATAT> ...
- Linux文件排序和FASTA文件操作
文件排序 seq: 产生一系列的数字; man seq查看其具体使用.我们这使用seq产生下游分析所用到的输入文件. # 产生从1到10的数,步长为1 $ seq 1 10 1 2 3 4 5 6 7 ...
- 单细胞转录组测序数据的可变剪接(alternative splicing)分析方法总结
可变剪接(alternative splicing),在真核生物中是一种非常基本的生物学事件.即基因转录后,先产生初始RNA或称作RNA前体,然后再通过可变剪接方式,选择性的把不同的外显子进行重连,从 ...
- 单细胞转录组测序技术(scRNA-seq)及细胞分离技术分类汇总
单细胞测序流程(http://learn.gencore.bio.nyu.edu) 在过去的十多年里,高通量测序技术被广泛应用于生物和医学的各种领域,极大促进了相关的研究和应用.其中转录组测序(RNA ...
- Nature Methods | 新软件SAVER-X可对单细胞转录组学数据进行有效降噪
图片来源(Nature Methods) 摘要 单细胞转 ...
- 单细胞测序|单细胞基因组|单细胞转录组|Gene editing|
单细胞测序 单细胞基因组学 测量理由是单细胞的时间空间特异性. Gene expression&co-expression 比较正常cell与疾病cell,正常organ与疾病organ,看出 ...
- perl 多fasta文件匹配,并提取匹配文件第一条序列
目标如题,有多个fasta文件和一个文件名列表,将文件名列表中包含的文件匹配出来并提取第一条序列合并成一个fa文件. 这个采用perl实现,用法和代码如下: 1 #!/usr/bin/perl -w ...
- mothur summary.seqs 统计fasta文件中每条序列的长度
在介绍summary.seqs的用法之前,我们首先需要搞清楚两个概念: 1)ambiguous bases 中文叫做模糊碱基,对于DNA序列来说,只有ATCG 4种碱基,在IUPAC定义的碱基标准中, ...
- 文献阅读 | The single-cell transcriptional landscape of mammalian organogenesis | 器官形成 | 单细胞转录组
The single-cell transcriptional landscape of mammalian organogenesis 老板已经提了无数遍的文章,确实很nb,这个工作是之前我们无法想 ...
随机推荐
- GK2023游记
不会有人高考之后二十多天才更博客吧...(写的很烂,单纯想补个坑) 大概就是写一下纯 whk 的高三生活,是不是流水账无所谓,就算当个记录了 高三生活开头就不太平,高三的班主任和高二一样(姑且叫他 田 ...
- python中datetime的常用操作
datetime是用于处理日期和时间的模块,一些常用的操作可通过提供的基本函数实现.引入模块--import datetime. 1.datetime转字符串--strftime()函数 有两种写法: ...
- 使用线程池实现为多个客户端提供Echo服务
import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; im ...
- 李沐多模态串讲视频总结 ALBEF VLMo BLIP CoCa BEITv3 模型简要介绍
开场 多模态串讲的上篇是比较传统的多模态任务 多模态最后的模态交互很重要 传统的缺点是都用了预训练的目标检测器,训练和部署都很困难. ViLT 把预训练的目标检测器换成了一层的 Patch Embed ...
- Linux驱动:使用workqueue、tasklet处理中断
Linux驱动:使用workqueue.tasklet处理中断 背景 中断服务程序一般都是在中断请求关闭的条件下执行的,以避免嵌套而使中断控制复杂化.但是,中断是一个随机事件,它随时会到来,如果关中断 ...
- RD/RT格式
一.RD RD长度是8字节,包括Type和Value字段. Type字段:2字节 Value字段:6字节 Type字段的取值决定了Value字段的结构.每种类型的Value字段都由两个部分组成,分别是 ...
- Avalonia应用在基于Linux的国产操作deepin上运行
deepin系统介绍 deepin(原名Linux Deepin)致力于为全球用户提供美观易用,安全可靠的 Linux发行版.deepin项目于2008年发起,并在2009年发布了以 linux de ...
- 【Hive报错】在hue上执行自定义的hive函数报错 Error while compiling statement:FAILED:SemanticException [Error 10011]: Invalid function default.sqlServerdes
在 Hive客户端中使用自定义创建UDF函数时,报"ERROR 10011","invalid function"的异常: 在Hive上自定义创建了一个函数,在 ...
- Python性能测试框架:Locust实战教程
01认识Locust Locust是一个比较容易上手的分布式用户负载测试工具.它旨在对网站(或其他系统)进行负载测试,并确定系统可以处理多少个并发用户,Locust 在英文中是 蝗虫 的意思:作者的想 ...
- P5494 题解
来一发 \(O(\log n)\) 线性空间的解法. 考虑通过只维护线段树叶子节点的虚树的方法压缩空间,考虑记录下每个节点的编号,然后通过异或完求最低位的 \(1\) 的方式求出 LCA 的深度,然后 ...