生信技能树学习笔记
书接上回,转录组测序完成后会得到FASTQ文件。
如下图所示:
其中,_1和_2代表同一个样本的双端测序,一端一个文件。
在转录组分析中用到的命令
分析目录——目录管理
规律的存放文件有利于查找,追溯。
建立目录的具体代码:
# 进入到个人目录
cd ~
## 1.建立数据库目录:在数据库下建立参考基因组数据库,注意命名习惯:参考基因组版本信息
mkdir -p database/GRCh38.105
## 2.建立项目分析目录
mkdir project
cd project
mkdir Human-16-Asthma-Trans # 注意项目命名习惯:物种-样本数-疾病-分析流程
cd Human-16-Asthma-Trans #不要用中文命名
# 建立数据存放目录
mkdir -pdata/rawdata data/cleandata/trim_galore data/cleandata/fastp
# 建立比对目录
mkdir -p Mapping/Hisat2Mapping/Subjunc
# 建立定量目录
mkdir -p Expression/featureCountsExpression/Salmon
# 查看整个分析目录准备结构
tree
├── data
│ ├── cleandata
│ ├── trim_galore
│ └── fastp
│ └── rawdata
├── Expression
│ ├── featureCounts
│ └── Salmon
└── Mapping
├── Hisat2
└── Subjunc
接下来分析用到的数据
分析前需要了解测序背景:
测序长度?75bp
单端or双端测序?paired end
测序对象?polyA
在文章的实验方法部分
文章中的分析流程
步骤1
将文件放在自己上面设置好的文件夹中
cd $HOME/project/Human-16-Asthma-Trans/data/rawdata #进入文件夹中
ln -s /home/t_rna/data/airway/fastq_raw25000/*gz./ #将文件用软链的方式连接到文件夹下面
#用ls或ll查看目录下文件
用zless -S查看文件,-S代表不换行格式
fastq数据格式
高通量测序(如Illumina NovaSeq等测序平台)得到的原始图像数据文件,经碱基识别(Base Calling)分析转化为原始测序序列(Sequenced Reads),我们称之为Raw Data或Raw Reads,结果以FASTQ(简称为fq)文件格式存储,其中包含测序序列(Reads)的序列信息以及其对应的测序质量信息。测序样品中真实数据随机截取结果如下图:
FASTQ格式文件中每个Read由四行描述
• 第一行以“@”开头,随后为Illumina测序识别符(Sequence Identifiers)和描述文字(选择性部分);
• 第二行是碱基序列;
• 第三行以“+”开头,随后为Illumina测序识别符(选择性部分);
• 第四行是对应序列的测序质量的ASCII码。
第一行解释
第四行-碱基质量值
碱基质量值(Quality Score或Q-score)是碱基识别(Base Calling)出错的概率的整数映射。通常使用的碱基质量值Q公式[1]为:
Q=-10 * log10P
其中P为碱基识别出错的概率。下表给出了碱基质量值与碱基识别出错的概率的对应关系
碱基质量值越高表明碱基识别越可靠,准确度越高。比如,对于碱基质量值为Q20的碱基识别,100个碱基中有1个会识别出错,以此类。
70=Q+33
Q=37 所以识别精度大约为99.99%
查看文件
统计SRR1039510_1.fastq.gz文件中共有多少条reads?25000 pairs reads
zless SRR1039510_1.fastq.gz | grep '^@SRR' -c
方法二
zless SRR1039510_1.fastq.gz | paste - - - - | wc -l
方法三
zless SRR1039510_1.fastq.gz | sed -n '1~4p' | wc -l
输出SRR1039510_1.fastq.gz文件中所有的序列ID(即第一行)
方法一
zless SRR1039510_1.fastq.gz | sed -n '1~4p' | less -S
方法二
zless SRR1039510_1.fastq.gz | grep '^@SRR' | less -S
方法三
zless SRR1039510_1.fastq.gz | grep '^@SRR' | cut -f 1 | less -S
方法四
zless -S SRR1039510_1.fastq.gz |awk '{if(NR%4==1){print}}' |less -S
NR表示整除==1表示第一行