1 .TH samtools 1 "28 January 2009" "samtools-0.1.2" "Bioinformatics tools"
4 samtools - Utilities for the Sequence Alignment/Map (SAM) format
7 samtools import ref_list.txt aln.sam.gz aln.bam
9 samtools sort aln.bam aln.sorted
11 samtools index aln.sorted.bam
13 samtools view aln.sorted.bam chr2:20,100,000-20,200,000
15 samtools merge out.bam in1.bam in2.bam in3.bam
17 samtools faidx ref.fasta
19 samtools pileup -f ref.fasta aln.sorted.bam
21 samtools tview aln.sorted.bam ref.fasta
25 Samtools is a set of utilities that manipulate alignments in the BAM
26 format. It imports from and exports to the SAM (Sequence
27 Alignment/Map) format, does sorting, merging and indexing, and
28 allows to retrieve reads in any regions swiftly.
30 .SH COMMANDS AND OPTIONS
33 samtools import <in.ref_list> <in.sam> <out.bam>
35 Convert alignments in SAM format to BAM format. File
37 is TAB-delimited. Each line must contain the reference name and the
38 length of the reference, one line for each distinct reference;
39 additional fields are ignored. This file also defines the order of the
40 reference sequences in sorting. File
42 can be optionally compressed by zlib or gzip. A single hyphen is
43 recognized as stdin or stdout, depending on the context. If you run
44 `samtools faidx <ref.fa>', the resultant index file
52 samtools sort [-n] [-m maxMem] <in.bam> <out.prefix>
54 Sort alignments by leftmost coordinates. File
56 will be created. This command may also create temporary files
57 .I <out.prefix>.%d.bam
58 when the whole alignment cannot be fitted into memory (controlled by
65 Sort by read names rather than by chromosomal coordinates
68 Approximately the maximum required memory. [500000000]
73 samtools merge [-n] <out.bam> <in1.bam> <in2.bam> [...]
75 Merge multiple sorted alignments. The header of
79 and the headers of other files will be ignored.
85 The input alignments are sorted by read names rather than by chromosomal
91 samtools index <aln.bam>
93 Index sorted alignment for fast random access. Index file
99 samtools view [-bhH] <in.bam> [region1 [...]]
101 Extract/print all or sub alignments in SAM or BAM format. If no region
102 is specified, all the alignments will be printed; otherwise only
103 alignments overlapping with the specified regions will be output. An
104 alignment may be given multiple times if it is overlapping several
105 regions. A region can be presented, for example, in the following
106 format: `chr2', `chr2:1000000' or `chr2:1,000,000-2,000,000'.
112 Output in the BAM format.
115 Include the header in the output.
118 Output the header only.
123 samtools faidx <ref.fasta> [region1 [...]]
125 Index reference sequence in the FASTA format or extract subsequence from
126 indexed reference sequence. If no region is specified,
128 will index the file and create
130 on the disk. If regions are speficified, the subsequences will be
131 retrieved and printed to stdout in the FASTA format. The input file can
138 samtools pileup [-f in.ref.fasta] [-t in.ref_list] [-l in.site_list]
139 [-iscg] [-T theta] [-N nHap] [-r pairDiffRate] <in.alignment>
141 Print the alignment in the pileup format. In the pileup format, each
142 line represents a genomic position, consisting of chromosome name,
143 coordinate, reference base, read bases, read qualities and alignment
144 mapping qualities. Information on match, mismatch, indel, strand,
145 mapping quality and start and end of a read are all encoded at the read
146 base column. At this column, a dot stands for a match to the reference
147 base on the forward strand, a comma for a match on the reverse strand,
148 `ACGTN' for a mismatch on the forward strand and `acgtn' for a mismatch
149 on the reverse strand. A pattern `\\+[0-9]+[ACGTNacgtn]+' indicates
150 there is an insertion between this reference position and the next
151 reference position. The length of the insertion is given by the integer
152 in the pattern, followed by the inserted sequence. Similarly, a pattern
153 `-[0-9]+[ACGTNacgtn]+' represents a deletion from the reference. Also at
154 the read base column, a symbol `^' marks the start of a read segment
155 which is a contiguous subsequence on the read separated by `N/S/H' CIGAR
156 operations. The ASCII of the character following `^' minus 33 gives the
157 mapping quality. A symbol `$' marks the end of a read segment.
161 is applied, the consensus base, consensus quality, SNP quality and
162 maximum mapping quality of the reads covering the site will be inserted
163 between the `reference base' and the `read bases' columns. An indel
164 occupies an additional line. Each indel line consists of chromosome
165 name, coordinate, a star, top two high-scoring ins/del sequences, the
166 number of reads strongly supporting the first indel, the number of reads
167 strongly supporting the second indel, the number of reads that confer
168 little information on distinguishing indels and the number of reads that
169 contain indels different from the top two ones.
176 Print the mapping quality as the last column. This option makes the
177 output easier to parse, although this format is not space efficient.
181 Only output pileup lines containing indels.
185 The reference sequence in the FASTA format. Index file
192 List of reference names ane sequence lengths, in the format described
195 command. If this option is present, samtools assumes the input
197 is in SAM format; otherwise it assumes in BAM format.
201 List of sites at which pileup is output. This file is space
202 delimited. The first two columns are required to be chromosome and
203 1-based coordinate. Additional columns are ignored. It is
204 recommended to use option
208 as in the default format we may not know the mapping quality.
212 Call the consensus sequence using MAQ consensus model. Options
217 are only effective when
223 Generate genotype likelihood in the binary GLFv2 format. This option
224 suppresses -c, -i and -s.
228 The theta parameter (error dependency coefficient) in the maq consensus
233 Number of haplotypes in the sample (>=2) [2]
237 Expected fraction of differences between a pair of haplotypes [0.001]
243 samtools tview <in.sorted.bam> [ref.fasta]
245 Text alignment viewer (based on the ncurses library). In the viewer,
246 press `?' for help and press `g' to check the alignment start from a
247 region in the format like `chr10:10,000,000'. Note that if the region
248 showed on the screen contains no mapped reads, a blank screen will be
249 seen. This is a known issue and will be improved later.
255 samtools fixmate <in.nameSrt.bam> <out.bam>
257 Fill in mate coordinates, ISIZE and mate related flags from a
258 name-sorted alignment.
262 samtools rmdup <input.srt.bam> <out.bam>
264 Remove potential PCR duplicates: if multiple read pairs have identical
265 external coordinates, only retain the pair with highest mapping quality.
268 works with FR orientation and requires ISIZE is correctly set.
275 SAM is TAB-delimited. Apart from the header lines, which are started
276 with the `@' symbol, each alignment line consists of:
282 Col Field Description
284 1 QNAME Query (pair) NAME
286 3 RNAME Reference sequence NAME
287 4 POS 1-based leftmost POSition/coordinate of clipped sequence
288 5 MAPQ MAPping Quality (Phred-scaled)
289 6 CIAGR extended CIGAR string
290 7 MRNM Mate Reference sequence NaMe (`=' if same as RNAME)
291 8 MPOS 1-based Mate POSistion
292 9 ISIZE Inferred insert SIZE
293 10 SEQ query SEQuence on the same strand as the reference
294 11 QUAL query QUALity (ASCII-33 gives the Phred base quality)
295 12 OPT variable OPTional fields in the format TAG:VTYPE:VALUE
299 Each bit in the FLAG field is defined as:
307 0x0001 the read is paired in sequencing
308 0x0002 the read is mapped in a proper pair
309 0x0004 the query sequence itself is unmapped
310 0x0008 the mate is unmapped
311 0x0010 strand of the query (1 for reverse)
312 0x0020 strand of the mate
313 0x0040 the read is the first read in a pair
314 0x0080 the read is the second read in a pair
315 0x0100 the alignment is not primary
316 0x0200 the read fails platform/vendor quality checks
317 0x0400 the read is either a PCR or an optical duplicate
323 In general, more testing is needed to ensure there is no severe bug.
325 Reference sequence names and lengths are not acquired from the BAM/SAM header.
327 CIGAR operations N and P may not be properly handled.
329 There is a small memory leak in the viewer.
333 Heng Li from the Sanger Institute is the author of the C version of
334 samtools. Bob Handsaker from the Broad Institute implemented the BGZF
335 library and Jue Ruan from Beijing Genomics Institute wrote the RAZF
336 library. Various people in the 1000Genomes Project contributed to the
337 SAM format specification.
341 Samtools website: http://samtools.sourceforge.net