From 100f59b5d7e3ae391f371fb93d6f12bb472b91d5 Mon Sep 17 00:00:00 2001 From: Kenzo-Hugo Hillion <hillion.kenzo@gmail.com> Date: Mon, 30 Aug 2021 15:35:00 +0200 Subject: [PATCH] use cd-hit-est instead for nuc --- tools/{cd-hit => cd-hit-est}/Snakefile | 52 +++++++++++++------ .../example_usage/Snakefile | 2 +- .../example_usage/config.yaml | 6 +-- 3 files changed, 40 insertions(+), 20 deletions(-) rename tools/{cd-hit => cd-hit-est}/Snakefile (70%) rename tools/{cd-hit => cd-hit-est}/example_usage/Snakefile (90%) rename tools/{cd-hit => cd-hit-est}/example_usage/config.yaml (57%) diff --git a/tools/cd-hit/Snakefile b/tools/cd-hit-est/Snakefile similarity index 70% rename from tools/cd-hit/Snakefile rename to tools/cd-hit-est/Snakefile index 583a736..5b08bdd 100644 --- a/tools/cd-hit/Snakefile +++ b/tools/cd-hit-est/Snakefile @@ -1,14 +1,18 @@ """ -CD-HIT manual +CD-HIT-EST manual ====== CD-HIT version 4.8.1 (built on May 23 2020) ====== -Usage: cd-hit [Options] +Usage: cd-hit-est [Options] Options -i input filename in fasta format, required, can be in .gz format + -j input filename in fasta/fastq format for R2 reads if input are paired end (PE) files + -i R1.fq -j R2.fq -o output_R1 -op output_R2 or + -i R1.fa -j R2.fa -o output_R1 -op output_R2 -o output filename, required + -op output filename for R2 reads if input are paired end (PE) files -c sequence identity threshold, default 0.9 this is the default cd-hit's "global sequence identity" calculated as: number of identical amino acids or bases in alignment @@ -22,9 +26,8 @@ Options -b band_width of alignment, default 20 -M memory limit (in MB) for the program, default 800; 0 for unlimitted; -T number of threads, default 1; with 0, all CPUs will be used - -n word_length, default 5, see user's guide for choosing it + -n word_length, default 10, see user's guide for choosing it -l length of throw_away_sequences, default 10 - -t tolerance for redundance, default 2 -d length of description in .clstr file, default 20 if set to 0, it takes the fasta defline and stops at first space -s length difference cutoff, default 0.0 @@ -57,6 +60,16 @@ Options -B 1 or 0, default 0, by default, sequences are stored in RAM if set to 1, sequence are stored on hard drive !! No longer supported !! + -P input paired end (PE) reads, default 0, single file + if set to 1, please use -i R1 -j R2 to input both PE files + -cx length to keep after trimming the tail of sequence, default 0, not trimming + if set to 50, the program only uses the first 50 letters of input sequence + -cy length to keep after trimming the tail of R2 sequence, default 0, not trimming + if set to 50, the program only uses the first 50 letters of input R2 sequence + e.g. -cx 100 -cy 80 for paired end reads + -ap alignment position constrains, default 0, no constrain + if set to 1, the program will force sequences to align at beginings + when set to 1, the program only does +/+ alignment -p 1 or 0, default 0 if set to 1, print alignment overlap in .clstr file -g 1 or 0, default 0 @@ -65,12 +78,19 @@ Options will cluster it into the most similar cluster that meet the threshold (accurate but slow mode) but either 1 or 0 won't change the representatives of final clusters + -r 1 or 0, default 1, by default do both +/+ & +/- alignments + if set to 0, only +/+ strand alignment + -mask masking letters (e.g. -mask NX, to mask out both 'N' and 'X') + -match matching score, default 2 (1 for T-U and N-N) + -mismatch mismatching score, default -2 + -gap gap opening score, default -6 + -gap-ext gap extension score, default -1 + -bak write backup cluster file (1 or 0, default 0) -sc sort clusters by size (number of sequences), default 0, output clusters by decreasing length if set to 1, output clusters by decreasing size -sf sort fasta/fastq by cluster size (number of sequences), default 0, no sorting if set to 1, output sequences by decreasing cluster size this can be very slow if the input is in .gz format - -bak write backup cluster file (1 or 0, default 0) -h print this help Questions, bugs, contact Weizhong Li at liwz@sdsc.edu @@ -85,22 +105,22 @@ Options "CD-HIT: accelerated for clustering the next generation sequencing data", Limin Fu, Beifang Niu, Zhengwei Zhu, Sitao Wu & Weizhong Li. Bioinformatics, (2012) 28:3150-3152 """ -__cd_hit_exec_command = config.get('cd_hit', {}).get('exec_command', 'cd_hit') -__cd_hit_modules = config.get('cd_hit', {}).get('modules') -__cd_hit_options = config.get('cd_hit', {}).get('options', '') -__cd_hit_threads = config.get('cd_hit', {}).get('threads', 1) +__cd_hit_est_exec_command = config.get('cd_hit_est', {}).get('exec_command', 'cd_hit_est') +__cd_hit_est_modules = config.get('cd_hit_est', {}).get('modules') +__cd_hit_est_options = config.get('cd_hit_est', {}).get('options', '') +__cd_hit_est_threads = config.get('cd_hit_est', {}).get('threads', 1) -rule cd_hit: +rule cd_hit_est: input: - __cd_hit_input + __cd_hit_est_input output: - __cd_hit_output + __cd_hit_est_output params: - exec_command = __cd_hit_exec_command, - modules = __cd_hit_modules, - options = __cd_hit_options + exec_command = __cd_hit_est_exec_command, + modules = __cd_hit_est_modules, + options = __cd_hit_est_options threads: - __cd_hit_threads + __cd_hit_est_threads run: command = [] if params.modules: diff --git a/tools/cd-hit/example_usage/Snakefile b/tools/cd-hit-est/example_usage/Snakefile similarity index 90% rename from tools/cd-hit/example_usage/Snakefile rename to tools/cd-hit-est/example_usage/Snakefile index ebd2bfb..b037c44 100644 --- a/tools/cd-hit/example_usage/Snakefile +++ b/tools/cd-hit-est/example_usage/Snakefile @@ -1,7 +1,7 @@ configfile: "config.yaml" # ==== Snakefile path ==== -__cd-hit_rules = config.get("snakefiles", {}).get("cd_hit") +__cd-hit_rules = config.get("snakefiles", {}).get("cd_hit_est") __main_output_dir = config.get('output_dir', 'output') diff --git a/tools/cd-hit/example_usage/config.yaml b/tools/cd-hit-est/example_usage/config.yaml similarity index 57% rename from tools/cd-hit/example_usage/config.yaml rename to tools/cd-hit-est/example_usage/config.yaml index 2bc908f..765e44d 100644 --- a/tools/cd-hit/example_usage/config.yaml +++ b/tools/cd-hit-est/example_usage/config.yaml @@ -1,5 +1,5 @@ snakefiles: - cd_hit: /pasteur/zeus/projets/p02/metasig/gitlab/snakemake/tools/cd-hit/Snakefile + cd_hit_est: /pasteur/zeus/projets/p02/metasig/gitlab/snakemake/tools/cd-hit/Snakefile input_dir: /some/input/directory output_dir: /some/output/directory @@ -9,7 +9,7 @@ samples: - test_00001 - test_00002 -cd_hit: - exec_command: cd-hit +cd_hit_est: + exec_command: cd-hit-est modules: blast+/2.10.0 cd-hit threads: 16 -- GitLab