㈠ 我用到的Samtools介绍
记录一下我用到的samtools的用法。
samtools的说明文档: http://samtools.sourceforge.net/samtools.shtml
bam文件优点:bam文件为二进制文件,占用的磁盘空间比sam文本文件小;利用bam二进制文件的运算速度快。
首先需要意识到的是samtools是一个非常强大的工具,想要熟练的使用它,还需要不断的摸索。
samtools的用法
(1)View
samtools view -bS abc.sam > abc.bam #将sam文件转换为bam文件
参数:
-b bam 输出bam
-S sam 输入sam
-@ 线程
在比对完成的sam文件中,包含着mapped reads 和unmapped reads
$ samtools view -bF 4 abc.bam > abc.F.bam #提取没有比对到参考序列上的比对结果,步包含标签
$ samtools view -bF 12 abc.bam > abc.F12.bam #提取paired reads中两条reads都比对到参考序列上的比对结果,只需要把两个4+8的值12作为过滤参数即可
$ samtools view -bf 4 abc.bam > abc.f.bam #提取没有比对到参考序列上的比对结果,包含标签
$ samtools view abc.bam scaffold1 > scaffold1.sam #提取bam文件中比对到caffold1上的比对结果,并保存到sam文件格式
$ samtools view abc.bam scaffold1:30000-100000 $gt; scaffold1_30k-100k.sam #提取scaffold1上能比对到30k到100k区域的比对结果
$ samtools view -T genome.fasta -h scaffold1.sam > scaffold1.h.sam #根据fasta文件,将 header 加入到 sam 或 bam 文件中
samtools的view不就可以进行格式转换,还可以进行数据的提取
例:提取1号染色体上1234~123456区域的以对read
samtools view SRR3589957_sorted.bam chr1:1234-123456| head
samtools view SRR3589957_sorted.bam chr1:1234-123456 > sub.bam
使FLAG更具可读性
samtools view -X sample.sorted.bam | head -n 5
计算总的比对数量
samtools view sample.sorted.bam | wc -l
显示标题,-H选项
samtools view -H sample.sorted.bam
将bam文件转换为sam文件
samtools view -h abc.bam > abc.sam
(2)Sort
samtools sort对bam文件进行排序,不能对sam文件进行排序。
以leftmost coordinates的方式对比对结果进行排序,或者使用-n参数以read名称进行排序。将会添加适当的@HD-SO排序顺序标头标签或者如果有必要的话,将会更新现存的一个排序顺序标头标签。sort命令的输出默认是标准输出写入,或者使用-o参数时,指定bam文件输出名。sort命令还会在内存不足时创建临时文件tmpprefix.%d.bam。
也就是说:samtools的排序方式有两种(常用)
默认方式,按照染色体的位置进行排序
samtools sort test.bam default
参数-n则是根据read名进行排序。
samtools sort -n test.bam sort_left
usage: samtools sort [-l level] [-m maxMem] [-o out.bam] [-O format] [-n] [-T tmpprefix] [-@ threads] [in.sam|in.bam|in.cram]
例如:samtools sort abc.bam abc.sort
samtools sort -O bam -@ 2 SRR1909070.bam -o SRR1909070.sorted.bam
RNA-seq 的数据比对结果 BAM 文件使用 samtools 进行 sort 之后文件压缩比例变化会比DNA-seq 更甚。另外,samtools 对 BAM 文件进行排序之后那些没有比对上的 reads 会被放在文件的末尾。
参数:
-l INT 设置输出文件压缩等级。0-9,0是不压缩,9是压缩等级最高。不设置此参数时,使用默认压缩等级;
-m INT 设置每个线程运行时的内存大小,可以使用K,M和G表示内存大小。
-n 设定排序方式按short reads的ID排序。默认下是按序列在fasta文件中的顺序(即header)和序列从左往右的位点排序。
-o FILE 设置最终排序后的输出文件名;
-O FORMAT 设置最终输出的文件格式,可以是bam,sam或者cram,默认为bam;
-T PREFIX 设置临时文件的前缀;
-@ INT 设置排序和压缩是的线程数量,默认是单线程。
(3)index
samtools index 建立索引,在建立索引之前应该先对bam文件进行排序。必须对bam文件进行 默认情况下的排序后 ,才能进行index。否则会报错。
建立索引后将产生后缀为.的文件,用于快速的随机处理。很多情况下需要有文件的存在,特别是显示序列比对情况下。比如samtool的tview命令就需要;gbrowse2显示reads的比对图形的时候也需要。
samtools index abc.sort.bam
如果想要建立索引的,具体可以看看比对的内部的算法,链接具体是怎么建立索引的
建立索引的目的应该是为了提高比对的效率
以下两种命令结果一样
$ samtools index abc.sort.bam
$ samtools index abc.sort.bam abc.sort.bam.
(4)flagstat
samtools flagstat 给出BAM文件的比对结果
samtools flagstat [options] <in.bam>
-@ 线程
-O FORMAT 设置最终输出的文件格式,可以是txt,json或者tsv,默认为json,tsv;
samtools flagstat输出结果解释:
11945742 + 0 in total (QC-passed reads + QC-failed reads)
#总共的reads数
0 + 0 plicates
7536364 + 0 mapped (63.09%:-nan%)
#总体上reads的匹配率
11945742 + 0 paired in sequencing
#有多少reads是属于paired reads
5972871 + 0 read1
#reads1中的reads数
5972871 + 0 read2
#reads2中的reads数
6412042 + 0 properly paired (53.68%:-nan%)
#完美匹配的reads数:比对到同一条参考序列,并且两条reads之间的距离符合设置的阈值
6899708 + 0 with itself and mate mapped
#paired reads中两条都比对到参考序列上的reads数
636656 + 0 singletons (5.33%:-nan%)
#单独一条匹配到参考序列上的reads数,和上一个相加,则是总的匹配上的reads数。
469868 + 0 with mate mapped to a different chr
#paired reads中两条分别比对到两条不同的参考序列的reads数
243047 + 0 with mate mapped to a different chr (mapQ>=5)
#paired reads中两条分别比对到两条不同的参考序列的reads数,并且其中比对质量>=5的reads的数量
(5)depth
得到每个碱基位点的测序深度,并输出到标准输出。
usage: samtools depth [options] in.bam [in.bam ...]
注意 :做depth之前必须做samtools index;
示例:
samtools depth in.bam > out.depth.txt
注意: in.bam 必须经过了排序。
(6)samtools rmp
NGS上机测序前需要进行PCR一步,使一个模板扩增出一簇,从而在上机测序的时候表现出为1个点,即一个reads。若一个模板扩增出了多簇,结果得到了多个reads,这些reads的坐标(coordinates)是相近的。在进行了reads比对后需要将这些由PCRplicates获得的reads去掉,并只保留最高比对质量的read。使用rmp命令即可完成.
Usage:
samtools rmp[-sS]
-s对single-end reads。默认情况下,只对paired-endreads
-S将Paired-endreads作为single-endreads处理。
$samtools rmp input.sorted.bam output.bam
(7)mpileup
samtools还有个非常重要的命令mpileup,以前为pileup。该命令用于生成bcf文件,再使用bcftools进行SNP和Indel的分析。bcftools是samtool中附带的软件,在samtools的安装文件夹中可以找到。
最常用的参数有2个:
-f来输入有索引文件的fasta参考序列;
-g输出到bcf格式。用法和最简单的例子如下
Usage:samtoolsmpileup[-EBug][-CcapQcoef][-rreg][-fin.fa][-llist][-McapMapQ][-QminBaseQ][-qminMapQ]in.bam[in2.bam[...]]
$samtoolsmpileup-fgenome.fastaabc.bam>abc.txt
$samtoolsmpileup-gSDfgenome.fastaabc.bam>abc.bcf
$samtoolsmpileup-guSDfgenome.fastaabc.bam|\bcftoolsview-cvNg->abc.vcf
mpileup不使用-u或-g参数时,则不生成二进制的bcf文件,而生成一个文本文件(输出到标准输出)。该文本文件统计了参考序列中每个碱基位点的比对情况;该文件每一行代表了参考序列中某一个碱基位点的比对结果。比如:
(8)faidx
对fasta文件建立索引,比如基因组的文件,生成的索引文件以.fai后缀结尾。该命令也能依据索引文件快速提取fasta文件中的某一条(子)序列
Usage: samtools faidx <in.bam> [ [...]]
对基因组文件建立索引
$ samtools faidx genome.fasta
生成了索引文件genome.fasta.fai,是一个文本文件,分成了5列。
第一列是子序列的名称;
第二列是子序列的长度;
第三列是序列所在的位置,因为该数字从上往下逐渐变大,最后的数字是genome.fasta文件的大小;
第4和5列不知是啥意思。于是通过此文件,可以定
位子序列在fasta文件在磁盘上的存放位置,直接快速调出子序列。
由于有索引文件,可以使用以下命令很快从基因组中提取到fasta格式的子序列
$ samtools faidx genome.fasta scffold_10 > scaffold_10.fasta
拓展:bcftools软件
bcftools和samtools类似,用于处理vcf(variant call format)文件和bcf(binary call format)文件。前者为文本文件,后者为其二进制文件。
bcftools使用简单,最主要的命令是view命令,其次还有index和cat等命令。index和cat命令和samtools中类似。此处主讲使用view命令来进行SNP和Indel calling。该命令的使用方法和例子为:
$ bcftools view -cvNg abc.bcf > snp_indel.vcf
生成的结果文件为vcf格式,有10列,分别是:1 参考序列名;2 varianti所在的left-most位置;3 variant的ID(默认未设置,用’.'表示);4 参考序列的allele;5 variant的allele(有多个alleles,则用’,'分隔);6 variant/reference QUALity;7 FILTers applied;8 variant的信息,使用分号隔开;9 FORMAT of the genotype fields, separated by colon (optional); 10 SAMPLE genotypes and per-sample information (optional)。
参考链接:
原文链接:https://blog.csdn.net/u013553061/article/details/53179945
https://www.cnblogs.com/emanlee/p/4316581.html
http://events.jianshu.io/p/794d82bccf6c
http://blog.sina.com.cn/s/blog_13de3725c0102v7rd.html
https://www.cnblogs.com/shuaihe/articles/6802246.html
㈡ 又来找你了 帮我破解下SAM 文件 3个我都有 谢了 我已经发你邮箱了 还有 怎嘛压缩的
㈢ sam说话都用什么插件
门限,压限,激励,均衡,混音
1、下载压缩包并解压。
2、在控制台上插件栏点下旁边的三角符号,在弹出来的菜单里选择 VST/Directx/ReWire设置。。
3、点下右边的文件夹图标,选择第二个“浏览VST文件夹。。”
4、选择你刚刚下载解压出来的那个目录,选中,点确定
5、在点确定,等待扫描,扫描的时候SAM可能会出现假死几秒。
㈣ 急求一个win8的无密码或已知密码的sam文件
前段时间电脑WIN8系统忘记开机密码了,上网查了下很多破解方法都不能用,比如取下主板电池,按下Ctrl+Alt+Del键等,最后是用PE引导盘解决了这个问题。下面我就把这个过程说一下,方便大家采用。
工具/原料
U盘(4G)
方法/步骤
软件下载
把U盘格式化,使用U盘制作工具和win8 -PE引导文件,可到网上下载下
制作引导盘
插入一个空的U盘,运行U盘制作工具,选择ISO制作,保存路径选择刚解压缩的win8 _PE ISO镜像,点击一键制作ISO文件,在弹出的对话框,点击写入文件,等待写入完成。
3
密码修改
将电脑设置为USB方式启动,使用引导盘进入win8-PE,使用PE自带的密码破解工具破解密码。
打开windows密码修改器,选择SAM文件位置,一般是C:\windows\system32\config\sam,打开文件之后选择要修改密码的用户,选择更改口令,填写新的密码,保存之后退出。
4
重启电脑
重启电脑,使用新的密码登陆。
最方便的就是进入PE里面用软件破解密码。
㈤ 把视频文件加密以后 sam文件怎样装进u盘里用u盘打开视频就可以了 那个高手能告诉我用哪个软件能做的出
SAM文件压缩后就可以移动到U盘了。
㈥ 谁给我发个台式机XP无密码SAM文件
你好知友!
.
附件已上传.请按下面的【点击下载】按钮.下载附件后.查看内容或运行程序.
.
(注:附件文件的后缀名是*.RAR或*.ZIP.*.7Z的.需要先解压缩.)
.
如果我的解答对你有帮助.请点击我的回答下方【选为满意回答】按钮.
.
你的及时采纳和+好评+赞.会是我继续解答的动力.
.
同时及时采纳你也将回收到在提问时被预扣的5财富值.
㈦ 压缩包解压时需要密码怎么办
压缩包解压时需要密码,输入解压密码即可。
一般,从网上下载的软件或游戏的安装包,密码的获取方式有以下几种:
1、密码是网站的网址。下载网站多数采用这个方法。
2、密码是上传人的ID或固定的密码。这个需要在下载的时候看一下相关的说明。
3、密码需要购买。有的网站是卖资源、软件和素材的。需要注册论坛,购买密码附件才可以得到密码。
㈧ SAM文件 + PLIST文件 + PNG文件怎么播放动画
文件后缀名:.sam,SAM(Sequence
Alignment/Map)格式是一种通用的比对格式,用来存储reads到参考序列的比对信息。SAM是一种序列比对格式标准,由sanger制定,是以TAB为分割符的文本格式。主要应用于测序序列mapping到基因组上的结果表示,当然也可以表示任意的多重比对结果。【此文件不是一般性质的图片文件,无法播放】
在进行iOS开发时,经常用到plist文件。它全名是:Property
List,属性列表文件,它是一种用来存储串行化后的对象的文件。属性列表文件的扩展名为.plist ,因此通常被称为 plist文件。文件是xml格式的。【此文件也不是一般性质的图片文件,无法播放】
便携式网络图形(Portable
Network
Graphics)是一种无损压缩的位图图形格式[1] 。其设计目的是试图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。PNG的名称来源于“可移植网络图形格式(Portable
Network
Graphic
Format,PNG)”,也有一个非官方解释“PNG's
Not
GIF”。PNG使用从LZ77派生的无损数据压缩算法,一般应用于JAVA程序、网页或S60程序中,原因是它压缩比高,生成文件体积小。【此文件是图片文件,但是支持编辑,不支持播放】
通常播放的图片文件是GIF文件,后缀.gif。支持播放,是动态图片。
㈨ sam格式的简单了解
部分转自生信菜鸟团公众号
SAM的全称是sequence alignment/map format。而BAM就是SAM的二进制文件(B源自binary)。
SAM 格式主要包括两大部分:
1 .标头注释部分(header section)
2 .比对结果部分(alignment section)
SAM格式是用来来支持高通量测序数据分析:
(1):快速查找与坐标重叠的比对。例如,选择与染色体2上的坐标323,567,334重叠的比对。
(2):根据read的属性进行选择和过滤。例如,我们希望能够快速选择能过比对到反向链上的read。
(3):有效地存储数据。例如,从SAM格式转化成BAM格式,单个压缩文件包含所有样本的数据,每个样本都以某种方式标记。
标头注释部分
标头信息可有可无,都是以@开头,用不同的tag表示不同的信息
比对结果部分
每一列表示一个read的比对信息,包括11个必须的字段和一个可选字段,字段之间用tag分割。必须的字段有11个,顺序固定。这11个字段包括:
第一列: Query Name (QNAME) :
这一列代表着比对片段的(template)的编号
第二列:FLAG :
这是一种常用且高效的保存多个布尔特征值的方法。
举个简单的例子: 在 SAM 格式中,当 flag 为 1,也即对应的二进制为 01 时,表示该 read 有多个测序数据 , 一般理解为有双端测序数据 (另一条没被过滤掉), 而 flag 为 2, 也即二进制 10 时, 表示这条 read 的多个片断都有比对结果, 通常理解为双端 reads 都比对上了, 那么就可以推断出 flag 为 3 时, 也即二进制的 11, 表示该 read 有另一端的 read 并且比对成功, 可以看到, 其实就是 01 加 10。
一般flag值不需要自己去算,直接将flag值导入网站即可
http://broadinstitute.github.io/picard/explain-flags.html
所有flag对应值的含义
1 : 代表这个序列采用的是PE双端测序
2: 代表这个序列和参考序列完全匹配,没有插入缺失
4: 代表这个序列没有mapping到参考序列上
8: 代表这个序列的另一端序列没有比对到参考序列上,比如这条序列是R1,它对应的R2端序列没有比对到参考序列上
16:代表这个序列比对到参考序列的负链上
32 :代表这个序列对应的另一端序列比对到参考序列的负链上
64 : 代表这个序列是R1端序列, read1;
128 : 代表这个序列是R2端序列,read2;
256: 代表这个序列不是主要的比对,一条序列可能比对到参考序列的多个位置,只有一个是首要的比对位置,其他都是次要的
512: 代表这个序列在QC时失败了,被过滤不掉了(# 这个标签不常用)
1024: 代表这个序列是PCR重复序列(#这个标签不常用)
2048: 代表这个序列是补充的比对(#这个标签具体什么意思,没搞清楚,但是不常用)
第三列: Reference Name (RNAME) :
reference sequence name,实际上就是比对到参考序列上的染色体号。若是无法比对,则是*
第四列: Position (POS) :
比对上的位置,注意是从1开始计数,没有比对上,此处为0
第五列:Mapping Quality (MAPQ) :
比对的质量;比对的质量分数,越高说明该read比对到参考基因组上的位置越准确
第六列:Compact Idiosyncratic Gapped Alignment Representation (CIGAR)
CIGAR 代表着简要比对信息表达式,其以参考序列为基础,使用数字加字母表示比对结果
例如 3S6M1P1I4M
前三个碱基被剪切去除了,然后6个比对上了,然后打开了一 个缺口,有一个碱基插入,最后是4个比对上了。
这里的总长度对应的就是测出来的一条序列的长度,如果是PE100,这里加起来就应该是100,如果是PE150,这里加起来就是150,这里的长度和第10列的长度是一致的
第七列:RNEXT :
双端测序中下一个reads比对的参考系列的名称。“*”是完全没有比对上,“=”代表完全比对
第3和第7列,可以用来判断某条reads是否比对成功到了基因组的染色体,左右两条reads是否比对到同一条染色体
第八列:PNEXT :
如果是双端测序,是指另一端匹配到参考基因组的位置,如果设置为0,那么该列不可用
第九列:TLEN Template的长度
最左边得为正,最右边的为负,中间的不用定义正负,不分区段(single-segment)的比对上,或者不可用时,此处为0
区别于第6列和第10列是对应测出来的序列的长度。这里第9列的长度是对应插入片段的长度,insert size,也就是建库时,将DNA片段打断成的长度。
第十列:Sequence :
序列片段的序列信息,如果不存储此类信息,此处为’*‘,注意CIGAR中M/I/S/=/X对应数字的和要等于序列长度;就是read的碱基序列,如果是比对到互补链上则是reverse completed。
就是测序的reads序列信息
第十一列:ASCII :
read质量值
其实很容易发现,如果将第1,10,11列提取出来的话,就能还原成我们常见的fastq格式信息。
第十二列:Optional fields :
可选的区域
格式如:TAG:TYPE:VALUE,其中TAG有两个大写字母组成,每个TAG代表一类信息,每一行一个TAG只能出现一次,TYPE表示TAG对应值的类型,可以是字符串、整数、字节、数组等。
备注 :
看一下KPGP-00001这个韩国人的测序reads比对到hg38的其中一个lane的sam格式部分信息:
可以看出这个是用的PE90测序,测序read长度为90bp,建库打断成约490bp,这个read名称是B80KJTABXX:4:1:1404:2065#CTAGTTAT,flag值是163,代表着
reads是比对到7号染色体,比对的位置是50962731,比对的质量值是60,"90M"意味着90个碱基都match(当然可能是mismatch),“=”意味着双端测序的另一条read也比对上,并且是比对到同一个片段,另一条read比对的位置是
50963137 ,这条read的序列信息是“
”
对应质量值分ASCII值为“gggggecgaQ_`X``BBBBB ”
以上。