Skip to main content

Analyse sam file and keep the unique aligment record.

Project description

Unique-Sam

Unique-Sam is a simple command line tool to remove the duplicated alignments in the SAM file. If the MAPQ field of the alignment is available, unique-sam will keep one and only one alignment with the highest score. Otherwise, unique-sam will calculate a score according to the alignment’s MD or CIGAR field and use the calculated value to remove the duplicated alignments.

Install

  • Install with the source code, in the source folder:

    python setup.py install
  • If you have **pip** installed, you can simply run

    pip install unique-sam

    After installation you can access unique-sam from your command line.

Usage

unique-sam need a SAM format file to run properly. Before using unique-sam command, we must sort the sam file by the QNAMEfield. You can use samtools to achieve this purpose, refer to samtools for more helps:

samtools sort --help

For basic usage, in your command line environment:

unique-sam input.sam -o output.sam

-s Parameter

If you don’t have access to samtools, you can use -s option of unique-sam:

unique-sam -s input.sam -o output.sam

The sort functionality of unique-sam is implemented as

  1. copy a temp file from the original sam file

  2. extract the header of the sam file

  3. sort the alignments with Bash sort program

-k Parameter

-k parameter give you the control on how to extract the alignment key from qname field the parameter of the -k is a regular expression. You should group the key part with parentheses. ** e.g. 1** > qname: N|GACGCGGATCTT/500407:4:H03E5AFXX:1:21109:5977:6969_2:N:0:ATACAA > > -k '(.*)\_[1-2](.*)' > > key will be: N|GACGCGGATCTT/500407:4:H03E5AFXX:1:21109:5977:6969:N:0:ATACAA > which will remove the _1/2 part of the qname.

** e.g. 2** > qname: HWI-ST667_0147:1:1101:1128:2079#CGATGT/1 > > -k '(.*)\/[1-2]' > > key will be: HWI-ST667_0147:1:1101:1128:2079#CGATGT > which will remove the /1/2 part of the qname.

For more about unique-sam run:

unique-sam --help

Unique Strategy

Following strategies are applied to find the unique & the best alignment

  1. Keep the alignment pair that has the highest score. If more than one pairs are found to have the same “Highest Score”, these pairs will be removed.

  2. Read1 and Read2 should be mapped on different strands.

  3. The segment length decided by the read pairs should be longer than 0.7 * read length

Log File

All removed alignments will be written into log file input.sam.log under current folder. Each line of the log file start with a symbol and followed by the deleted alignment (the original alignment record in the input.sam). The symbol describe the reason of why this/these alignments should be removed. The specification of these symbols are listed in the follow table:

| Symbol | Description | | —— | ———– | | ! | Error lines | | < | Low score alignments | | = | Pairs with more than one best score | | ~ | Read pair mapped on the same strand | | ? | Segment length too short | | - | Invalid read1/2 information in flag filed or unmapped segment |

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unique-sam-0.2.4.tar.gz (6.7 kB view details)

Uploaded Source

File details

Details for the file unique-sam-0.2.4.tar.gz.

File metadata

  • Download URL: unique-sam-0.2.4.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for unique-sam-0.2.4.tar.gz
Algorithm Hash digest
SHA256 bb19b699e22c5a85c97009dd9926746704a416a684e0bbabdaf9bb9513cbb550
MD5 812c50967c6843cba463760c73dd1140
BLAKE2b-256 031651c6c02140d2ce6ab9d71615341bdb0383d0a137e790868445161f93cb9b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page