单细胞转录组上游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,这个工作是之前我们无法想 ...
随机推荐
- iOS开发环境theos开发环境搭建与介绍
iOS开发环境theos开发环境搭建与介绍 标签(空格分隔): 越狱开发-第一篇 1. 环境准备 一台Mac,本人的机器是MacBook Air (13-inch, Mid 2013),系统是10.1 ...
- Linux 提权-Cron Jobs
本文通过 Google 翻译 Cron Jobs – Linux Privilege Escalation - Juggernaut-Sec 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行 ...
- react类组件 组件传值
class Cmp1 extends React.Component{ render(){ return ( <div>{ this.props.name } -- 我是一个类</d ...
- [SHOI2011]双倍回文 题解
[SHOI2011]双倍回文 题解 看了一些写回文自动机的大佬的代码,我深感敬畏,于是我转身向Manacher走去 现在荣登最优解第一页-- 说实话,这个方法的复杂度是很玄学的,但是加了一些优化之后, ...
- 跨域iframe 配置fullscreen权限
在新版本的 Chrome 等浏览器中,默认情况下禁止了跨域 iframe 开启全屏的权限.在 iframe 中,我们通常使用 element.requestFullscreen() 方法来进行全屏展示 ...
- Jenkins从github拉取项目,github有更新,自动进行构建,实现自动集成
使用git之前的准备工作 1. 搭建Jenkins的机器上,有安装git,配置git的安装地址,Jenkins配置Git的安装地址 2. Global Tool Configuration - > ...
- bootstrap-sweetalert
官网地址:http://lipis.github.io/bootstrap-sweetalert/ 模板样式 // 删除书籍,甜甜的警告 $('.bookdel').click(function () ...
- Android 通过odex优化提高首次开机速度
背景 客户反馈说开机时间过长,需要优化. 原文:https://blog.csdn.net/croop520/article/details/73930184 介绍 现在很多Android都需要预装很 ...
- Zynq 7000的3种IO
概念 MIO MIO:多功能IO接口(分配在 GPIO 的 Bank0 和Bank1),属于Zynq的PS部分,在芯片外部有54个引脚.这些引脚可以用在GPIO.SPI.UART.TIMER.Ethe ...
- ElasticSearch不区分字母大小写搜索
0.停止使用该索引的服务(避免新加了数据没备份) 1.备份filesearch索引(检查备份的索引和原索引数据条数是否一致) 1 POST http://127.0.0.1:9200/_reindex ...