一、在任意文件夹下面创建形如 1/2/3/4/5/6/7/8/9 格式的文件夹系列。
mkdir -p 1/2/3/4/5/6/7/8/9 # -p 递归创建目录
tree . # 按树状图显示当前文件夹信息
image.png
二、在创建好的文件夹下面,里面创建文本文件me.txt
cd 1/2/3/4/5/6/7/8/9 #从当前目录通过相对路径转到该目录
vim me.txt #用vim 建立me.txt 文本文件
三、在文本文件me.txt
例输入内容
Go to: http://www.biotrainee.com/
I love bioinfomatics.
And you ?
前三题效果如下
image.png四、删除上面创建的文件夹1/2/3/4/5/6/7/8/9
及文本文件 me.txt
cd ~ #回到原来家目录
sudo rm -r 1 # -r 用于删除目录
五、在任意文件夹下面创建 folder1~5这5个文件夹,然后每个文件夹下面继续创建 folder1~5这5个文件夹
mkdir temp-for-practice #创建一个练习目录
cd temp-for-practice/ #转到这个目录
mkdir -p folder_{1..5}/folder_{1..5} #用循环方法创建目录
tree #树状图展示
image.png
六、在第五题创建的每一个文件夹下面都 创建第二题文本文件 me.txt ,内容也要一样。(这个题目难度超纲,建议一个月后再回过头来做)
xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。xargs 一般是和管道一起使用。
命令格式:
somecommand |xargs -item command
代码:
echo folder{1..5}/folder{1..5}|xargs -n 1 cp me.txt
#-n num 后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的。
image.png
七、再次删除掉前面几个步骤建立的文件夹及文件
rm -r folder_{1..5}
image.png
八、下载 http://www.biotrainee.com/jmzeng/igv/test.bed 文件,后在里面选择含有 H3K4me3 的那一行是第几行,该文件总共有几行。
wget http://www.biotrainee.com/jmzeng/igv/test.bed
image.png
用vim打开
/vim test.bed
显示行号:在命令模式下(输入:) : set number
即可显示行号,本文共有10行
查找字符串:命令模式下输入:/H3K4me3
光标停在第一个字符串前面,按n
可查找下一个,发现所有该字符串在第8行
九、下载 http://www.biotrainee.com/jmzeng/rmDuplicate.zip 文件,并且解压,查看里面的文件夹结构
wget http://www.biotrainee.com/jmzeng/rmDuplicate.zip
解压
unzip rmDuplicate.zip
image.png
十、打开第九题解压的文件,进入 rmDuplicate/samtools/single 文件夹里面,查看后缀为 .sam 的文件,搞清楚 生物信息学里面的SAM/BAM 定义是什么。
在生物信息学中尤其是高通量测序数据分析中,大部分的操作都是在实现短片段序列与参考序列的比对(mapping),比如bowtie等,这就涉及到如何使用一个统一的格式来表示这种mapping结果呢,sam(Sequence Alignment/Map)格式就是来解决这个问题的。sam文件拥有头部描述和详细比对两部分,其中头部描述是以@开头,后面紧跟两个缩写字母表示相应的含义。
SAM分为两部分,注释信息(header section)和比对结果部分(alignment section),注释信息可有可无,都是以@开头,用不同的tag表示不同的信息,主要有@HD,说明符合标准的版本、对比序列的排列顺序;@SQ,参考序列说明;@RG,比对上的序列(read)说明;@PG,使用的程序说明;@CO,任意的说明信息。而详细比对部分是通过11个tab隔开的字段来表示。
详见:https://blog.csdn.net/xcaryyz/article/details/79257604
十一、安装 samtools 软件
参考http://www.omicsclass.com/article/529
下载
wget https://nchc.dl.sourceforge.net/project/samtools/samtools/1.9/samtools-1.9.tar.bz2
解压缩
tar jxvf samtools-1.9.tar.bz2
安装
./configure --prefix=/home/pi/temp-for-practice/biosoft/samtools/samtools-1.9 #设置安装路径
出现报错
image.png
查看git-hub中INSTALL
根据指导,发现需要安装下面这些包,两行代码搞定 image.png
sudo apt-get update # Ensure the package list is up to date
sudo apt-get install autoconf automake make gcc perl zlib1g-dev libbz2-dev liblzma-dev libcurl4-gnutls-dev libssl-dev libncurses5-dev
再次安装
./configure --prefix=/home/pi/temp-for-practice/biosoft/samtools/samtools-1.9 #设置安装路径
然后
make
make install
当然,我们要把它放到环境变量里面去,方法是
echo 'export PATH="/home/pi/temp-for-practice/biosoft/samtools/samtools-1.9/bin:$PATH" ' >>~/.bashrc
source ~/.bashrc
这样以后就可以随时随地的调用,不需要加路径
试验一下,搞定!
[SAMtools] 常用指令总结
1、view 主要功能:sam和bam文件之间相互转换,针对bam文件进行相关操作。bam文件是sam文件的二进制格式,占据内存较小且运算速度快。
2、sort 主要功能:对bam文件进行排序(不能对sam文件进行排序)
3、index 主要功能:对bam文件建立索引,但在此之前必须进行排序(sort),生成后缀是.bai的文件。
4、merge 功能:合并多个已经sort的bam文件
5、faidx 功能:对fasta格式的文件建立索引,后缀名.fai。根据索引文件和序列文件,可以快速提取任意区域的序列文件。
6、tview 作用:直观显示reads比对到基因组的情况,和基因组浏览器有点类似。
7、flagstat 作用:reads的比对情况统计
8、depth 作用:每个碱基位点的测序深度
9、mpileup 作用:对参考基因组每个位点做碱基堆积,用于call SNP和INDEL。主要是生成BCF、VCF文件或者pileup一个或多个bam文件。比对记录以在@RG中的样本名作为区分标识符。如果样本标识符缺失,那么每一个输入文件则视为一个样本。
10、dict 作用:建立参考基因组字典
11、cat 作用:连接多个bam文件(不做排序)
12、split 作用:根据read group 分割bam文件
13、quickcheck 作用:检查SAM/BAM/CRAM文件的完整性
14、fastq 作用:bam文件转换为fastq
15、fasta 作用:bam文件转换为fasta
16、idxstats 作用:检索和打印与输入文件相对应的index file里的统计信息
17、stats 作用:对bam文件做详细统计,其统计结果可用mics/plot-bamstats作图
18、reheader 作用:替换bam文件的头
19、rmdup 作用:将由PCR duplicates 获得的reads去掉,并保留高比对质量的reads
20、phase 作用:call杂合SNP,确定相位
21、calmad 作用:计算MD tag(a optional field,记录了mismatch信息)
十二 打开 后缀为BAM 的文件,找到产生该文件的命令。
提示一下命令是:
/home/jianmingzeng/biosoft/bowtie/bowtie2-2.2.9/bowtie2-align-s --wrapper basic-0 -p 20 -x /home/jianmingzeng/reference/index/bowtie/hg38 -S /home/jianmingzeng/data/public/allMouse/alignment/WT_rep2_Input.sam -U /tmp/41440.unp
samtools view -H ~/temp-for-practice/rmDuplicate/samtools/single/tmp.sorted.bam
在文件底部找到了
十三题、根据上面的命令,找到我使用的参考基因组 /home/jianmingzeng/reference/index/bowtie/hg38 具体有多少条染色体
这里先学习一下linux中常用的几个文本处理工具,号称linux三剑客
awk
awk从放弃到入门(1):awk基础 (通俗易懂,快进来看)
awk从放弃到入门(2):awk分隔符
awk从放弃到入门(3):awk变量
awk从放弃到入门(4):awk格式化
awk从放弃到入门(5):awk模式(Pattern)之一
awk从放弃到入门(6):awk模式(Pattern)之二
awk从放弃到入门(7):awk动作总结之一
awk从放弃到入门(8):awk动作总结之二
awk从放弃到入门(9):awk数组详解
awk从放弃到入门(10):awk内置函数
sed
shell sed
grep
Grep命令的详细使用方法
再来看第13题
https://blog.csdn.net/shenhuan1104/article/details/75852822
image.png
sed统计一下行数
image.png
十四题、上面的后缀为BAM 的文件的第二列,只有 0 和 16 两个数字,用 cut/sort/uniq等命令统计它们的个数。
用samtools view
打开该文件
用awk命令提取第二列
发现只有0 和16两个数字
用sort
排序后(非必要)grep
筛选,再用wc -l
统计行数即可
image.png
十五题、重新打开 rmDuplicate/samtools/paired 文件夹下面的后缀为BAM 的文件,再次查看第二列,并且统计
image.png发现这次用
wc -l
的方法麻烦了,用uniq -c
就可以很好地解决问题。
十六题、下载 http://www.biotrainee.com/jmzeng/sickle/sickle-results.zip 文件,并且解压,查看里面的文件夹结构, 这个文件有2.3M,注意留心下载时间及下载速度。
image.pngunzip sickle-results.zip
cd sickle-results/
tree
十七题、解压 sickle-results/single_tmp_fastqc.zip 文件,并且进入解压后的文件夹,找到 fastqc_data.txt 文件,并且搜索该文本文件以 >>开头的有多少行?
image.png注意用grep筛选以>>开头的行时要转义一下,然后用wc -l统计行数
十八题、下载 http://www.biotrainee.com/jmzeng/tmp/hg38.tss
文件,去NCBI找到TP53/BRCA1
等自己感兴趣的基因对应的 refseq数据库
ID,然后找到它们的hg38.tss
文件的那一行。
https://www.ncbi.nlm.nih.gov/gene/7157
在这里https://www.ncbi.nlm.nih.gov/gene/7157#reference-sequences找到许多NM开头的id
就选这个了
image.png
可以看在在413行,在第17号染色体上
十九题、解析hg38.tss 文件,统计每条染色体的基因个数。
image.png二十题、解析hg38.tss 文件,统计NM和NR开头的数量,了解NM和NR开头的含义。
image.png最后百度一下:
NM_***:mRNA mixed,转录组产物序列;成熟mRNA转录本序列
NR_***:RNA mixed,非编码的转录子序列,包括结构RNAs,假基因转子等
网友评论