TrimGalore
Nesta seção:
Descrição
De acordo com a Documentação do TrimGalore, esta é uma ferramenta para corte consistente de adaptadores e remoção de bases de baixa qualidade em dados de sequenciamento de nova geração (NGS). Possui tratamento especial para bibliotecas RRBS (Reduced Representation Bisulfite Sequencing).
Ela automatiza a detecção de adaptadores, oferece corte por qualidade baseado em Phred, suporte para dados paired-end e paralelização para processamento eficiente.
Versões Disponíveis
trim_galore/2.2.0 (default)
Nota
Para verificar as versões disponíveis:
module avail trim_galore
Carregando o Módulo
# Carregar TrimGalore
module load trim_galore/2.2.0
# Verificar instalação
trim_galore --version
# Verificar ajuda
trim_galore --help
Submissão de Jobs
Abaixo estão exemplos de scripts para usar o TrimGalore no GridUnesp. Lembre-se sempre de definir INPUT e OUTPUT para o job-nanny.
Exemplo 1: Processamento Single-end
#!/bin/bash
#SBATCH -J trim_se
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -t 12:00:00
#SBATCH --mem=8G
export INPUT="amostra.fastq.gz"
export OUTPUT="amostra_trimmed.fq.gz"
# Use asterisco (*) caso haja mais resultados
# export OUTPUT="*"
module load trim_galore/2.2.0
job-nanny trim_galore --fastqc amostra.fastq.gz
Exemplo 2: Processamento Paired-end
#!/bin/bash
#SBATCH -J trim_pe
#SBATCH -N 1
#SBATCH -c 8
#SBATCH -t 24:00:00
#SBATCH --mem=16G
export INPUT="amostra_R1.fastq.gz amostra_R2.fastq.gz"
export OUTPUT="amostra_R1_val_1.fq.gz amostra_R2_val_2.fq.gz"
# Use asterisco (*) caso haja mais resultados
# export OUTPUT="*"
module load trim_galore/2.2.0
job-nanny trim_galore --paired --cores $SLURM_CPUS_PER_TASK \
--fastqc amostra_R1.fastq.gz amostra_R2.fastq.gz
Exemplo 3: Processamento Paired-end com Arquivos Descompactados
#!/bin/bash
#SBATCH -J trim_pe_uncomp
#SBATCH -N 1
#SBATCH -c 8
#SBATCH -t 24:00:00
#SBATCH --mem=16G
export INPUT="amostra_R1.fastq amostra_R2.fastq"
export OUTPUT="amostra_R1_val_1.fq amostra_R2_val_2.fq"
module load trim_galore/2.2.0
job-nanny trim_galore --paired --cores $SLURM_CPUS_PER_TASK \
amostra_R1.fastq amostra_R2.fastq
Nota
Por padrão, a compressão da saída reflete a compressão da entrada:
- Entrada .fastq.gz → saída .fq.gz
- Entrada .fastq → saída .fq
Exemplo 4: Modo RRBS (Bisulfite-seq)
#!/bin/bash
#SBATCH -J trim_rrbs
#SBATCH -N 1
#SBATCH -c 4
#SBATCH -t 24:00:00
#SBATCH --mem=16G
export INPUT="bisulfite_R1.fastq.gz bisulfite_R2.fastq.gz"
export OUTPUT="bisulfite_R1_val_1.fq.gz bisulfite_R2_val_2.fq.gz"
module load trim_galore/2.2.0
job-nanny trim_galore --paired --rrbs --cores $SLURM_CPUS_PER_TASK \
bisulfite_R1.fastq.gz bisulfite_R2.fastq.gz
Exemplo 5: Otimização de Tamanho com --clumpify
Para dados como ATAC-seq ou amplicons, que se beneficiam da reordenação para melhor compressão:
#!/bin/bash
#SBATCH -J trim_clump
#SBATCH -N 1
#SBATCH -c 8
#SBATCH -t 12:00:00
#SBATCH --mem=16G
export INPUT="dados_amplicon.fastq.gz"
export OUTPUT="amplicon_trimmed.fq.gz"
module load trim_galore/2.2.0
# Para arquivos intermediários: --clumpify
# Para armazenamento: adicione --compression 6
job-nanny trim_galore --clumpify --cores $SLURM_CPUS_PER_TASK \
--compression 6 dados_amplicon.fastq.gz
Exemplo 6: Remoção de Poli-A
Para bibliotecas de RNA-seq enriquecidas com poli-A:
#!/bin/bash
#SBATCH -J trim_polya
#SBATCH -N 1
#SBATCH -c 8
#SBATCH -t 12:00:00
#SBATCH --mem=16G
export INPUT="rna_sample_R1.fastq.gz rna_sample_R2.fastq.gz"
export OUTPUT="rna_sample_R1_val_1.fq.gz rna_sample_R2_val_2.fq.gz"
module load trim_galore/2.2.0
job-nanny trim_galore --paired --polyA --cores $SLURM_CPUS_PER_TASK \
--fastqc rna_sample_R1.fastq.gz rna_sample_R2.fastq.gz
Exemplo 7: Forçar Saída Descompactada
#!/bin/bash
#SBATCH -J trim_nogzip
#SBATCH -N 1
#SBATCH -c 4
#SBATCH -t 12:00:00
#SBATCH --mem=8G
export INPUT="amostra.fastq.gz"
export OUTPUT="amostra_trimmed.fq"
module load trim_galore/2.2.0
job-nanny trim_galore --dont_gzip --cores $SLURM_CPUS_PER_TASK \
amostra.fastq.gz
Job Array para Múltiplas Amostras
#!/bin/bash
#SBATCH -J trim_array
#SBATCH --array=1-10
#SBATCH -N 1
#SBATCH -c 4
#SBATCH -t 12:00:00
#SBATCH --mem=8G
SAMPLES=(
"amostra1"
"amostra2"
"amostra3"
"amostra4"
"amostra5"
"amostra6"
"amostra7"
"amostra8"
"amostra9"
"amostra10"
)
SAMPLE=${SAMPLES[$SLURM_ARRAY_TASK_ID-1]}
export INPUT="${SAMPLE}.fastq.gz"
export OUTPUT="${SAMPLE}_trimmed.fq.gz"
module load trim_galore/2.2.0
job-nanny trim_galore --fastqc ${SAMPLE}.fastq.gz
Job Array para Paired-end (Múltiplas Amostras)
#!/bin/bash
#SBATCH -J trim_array_pe
#SBATCH --array=1-10
#SBATCH -N 1
#SBATCH -c 8
#SBATCH -t 24:00:00
#SBATCH --mem=16G
SAMPLES=(
"amostra1"
"amostra2"
"amostra3"
"amostra4"
"amostra5"
"amostra6"
"amostra7"
"amostra8"
"amostra9"
"amostra10"
)
SAMPLE=${SAMPLES[$SLURM_ARRAY_TASK_ID-1]}
export INPUT="${SAMPLE}_R1.fastq.gz ${SAMPLE}_R2.fastq.gz"
export OUTPUT="${SAMPLE}_R1_val_1.fq.gz ${SAMPLE}_R2_val_2.fq.gz"
module load trim_galore/2.2.0
job-nanny trim_galore --paired --cores $SLURM_CPUS_PER_TASK \
--fastqc ${SAMPLE}_R1.fastq.gz ${SAMPLE}_R2.fastq.gz
Principais Opções e Funcionalidades
Opção |
Abrev./Valor |
Descrição |
|---|---|---|
|
Modo paired-end |
|
|
|
Número de núcleos para processamento paralelo (até ~8) |
|
Executa FastQC integrado nos arquivos trimados |
|
|
Modo especial para bibliotecas RRBS |
|
|
Remove caudas poli-A (recomendado para RNA-seq) |
|
|
Corte de qualidade específico para equipamentos de 2 cores |
|
|
Reordena reads para melhor compressão (requer |
|
|
Nível de compressão gzip (1 a 9). Padrão: 1 (mais rápido) |
|
|
Mantém reads não pareados em arquivos separados |
|
|
Gera saída em texto simples (não compactada) |
|
|
Descarta reads com tamanho menor que N (padrão: 20) |
|
|
Qualidade Phred para corte (padrão: 20) |
Dica
Para dados paired-end, considere usar --retain_unpaired para não perder reads que perderam seu par durante o corte.
Arquivos de Saída
Modo |
Arquivos de saída |
|---|---|
Single-end |
|
Paired-end |
|
Paired-end (com |
|
FastQC |
Relatório HTML e arquivo ZIP com qualidade pós-trimagem |
Dicas de Otimização
Paralelismo: Use
--coresaté 8 para ganho próximo-linearCompressão:
--compression 1(padrão) é mais rápida;--compression 6-9reduz tamanhoClumpify: Beneficia ATAC-seq, amplicons, RNA-seq; requer
--cores >= 2Memória: O TrimGalore é leve, mas o FastQC integrado pode consumir mais memória
Referências
Documentação oficial: https://www.trimgalore.com/
Repositório GitHub: https://github.com/FelixKrueger/TrimGalore
Guia do Usuário: https://www.trimgalore.com/user-guide/
Guia RRBS: https://www.trimgalore.com/rrbs-guide/
Notas de migração v2.0: https://www.trimgalore.com/v2-migration-notes/
Ver também
fastqc - Análise de qualidade de sequenciamento
Miniconda - Gerenciamento de ambientes e pacotes
Processando Simulações - Como submeter jobs no GridUnesp