komplexityはFAST [A / Q]ファイルから複雑度の低いシーケンスをすばやく計算および/またはマスクするために開発された。複雑さを評価するために、長さで割ったシーケンス上の一意のk-mer値を使用する。例えばk = 4の場合、正規化複雑度スコアが<0.55であることは、64-120bpの領域で、このシーケンスが複雑度の低い繰り返しシーケンスであることを強く示唆している。
インストール
ubuntu16.04のminiconda3.4.0;.5環境でテストした(docker使用、ホストOS mac os10.12)。
本体 Github
git clone https://github.com/eclarke/komplexity
cd komplexity
cargo install
#conda
conda install -c eclarke -y komplexity
>kz -h
$ kz -h
kz
Calculate the overall complexity of a sequence. Reads from stdin and writes to stdout.
USAGE:
kz [FLAGS] [OPTIONS]
FLAGS:
-f, --fasta input is in fasta format
-F, --filter filter sequences falling below a threshold
-h, --help Prints help information
-l, --lower_case mask using lower-case symbols rather than Ns
-m, --mask use sliding window to mask low-complexity regions
-V, --version print version info
OPTIONS:
-k <k> length of k-mer to use [default: 4]
-t, --threshold <threshold> complexity threshold ([0:1], 0 = most stringent, 1 = least) [default: 0.55]
-w, --window_size <window_size> window size for masking [default: 32]
実行方法
Masking
fastq(非圧縮のみ対応)
kz < seqs.fq > output
kz --fasta < seqs.fa > output
Filtering
fastq
kz --filter < seqs.fq > output
kz --filter --fasta < seqs.fa > output
>head filtered_output
# head filtered_output
@M02914:194:000000000-CB59R:1:1101:14898:2053 1:N:0:3
CTTCTACACCGTTCCGCTGCAGCTACTGGCTTATCACGTCGCGCTGATCAAAGGTACCGACGTTGACCAGCCGCGTAACCTGGCAAAATCGGTTACGGTTGAGTAATAAATGGATGCCCTGCGTAAGCGGGGCATTTTTCTTCCTGTTATGT
+
>>>1A3@1>>1BEAA1AE0A01AF1BG11AFGBGF2A0GF/E//EC/GGFBDFEGHHHGGGGGGHHHHHHHGGGGGGGGHHHHHHHHHHHGGGGGHGGGGGHHGHHHHHHHHHHHHHHHHHHGFGGHHGGGGGGHGHHHHHHHHHHHHHHHG
@M02914:194:000000000-CB59R:1:1101:14006:2061 1:N:0:3
GGCTGGAGGAATACCCGGACGGTGCCGAGCGGCTGGCAGCGTTTTATGCCGAACGCGCCCGTCACGGCGTGGCGTTGATTGTCAGCGGCGGCATTGCACCAGATTTAACAGGCGTTGGCATGGAAGGCGGTGCAATGCTCAATGACGCCAGC
+
>1>>1111111B1BAAE00A00EGCF?//A??AEC?ECEFEGGGGFHFFHGGGGGGGGGGGEGGGGGGGGGGGGCCGHHHHFHHHHGGGGGGGGHHGHHHHHHHHHGGGGGGGGGGGGFGGGGFGGGGG@;@@FFFFFFFFFFFFFFF@F@F
@M02914:194:000000000-CB59R:1:1101:13779:2066 1:N:0:3
AGCTAATACCGCATAACGTCGCAAGACCAAAGAGGGGGACCTTCGGGCCTCTTGCCATCGGATGTGCCCAGATGGGATTAGCTAGTAGGTGGGGTAACGGCTCACCTAGGCGACGATCCCTAGCTGGTCTGAGAGGATGACCAGCCACACT
low complexity領域と判定された配列がNでマスクされる。
引用
GitHub - eclarke/komplexity: A method of assessing sequence complexity based on kmer frequencies
関連