# RNA-Seq *Passiflora organensis*
### Amostras RNASeq - Passiflora
- Extrair .rar: unrar -x
- Descompactar gz: gunzip
- Criar link simbólico: ln -s
BFloral-3_S15_L004_R1_001.fastq > POBF_R1.fastq
Bfloral-3_S15_L004_R2_001.fastq > POBF_R2.fastq
Caule-2_S14_L004_R1_001.fastq > POC_R1.fastq
Caule-2_S14_L004_R2_001.fastq > POC_R2.fastq
Folha-1_S13_L004_R1_001.fastq > POF_R1.fastq
Folha-1_S13_L004_R2_001.fastq > POF_R2.fastq
### Index adapters:
1. folha: AR001 ATCACG
2. caule: AR003 TTAGGC
3. b.floral: AR008 ACTTGA
### Busca dos adaptadores:
```
-a GATCGGAAGAGCACACGTCTGAACTCCAGTCACNNNNNNATCTCGTATGCCGTCTTCTGCTTG
-g AATGATACGGCGACCACCGAGATCTACACTCTTTCCCTACACGACGCTCTTCCGATCT
-A AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGTAGATCTCGGTGGTCGCCGTATCATT
-G CAAGCAGAAGACGGCATACGAGATNNNNNNGTGACTGGAGTTCAGACGTGTGCTCTTCCGATCT
```
- Sendo que:
-g: Nesse parametro deve-se fornecer a sequência do adaptador a ser removido na primeira read na região 5’.
-G: Nesse parametro deve-se fornecer a sequência do adaptador a ser removido na segunda read na região 5’.
-a: Nesse parametro deve-se fornecer a sequência do adaptador a ser removido na primeira read na região 3’.
-A: Nesse parametro deve-se fornecer a sequência do adaptador a ser removido na segunda read na região 3’.
### Pré - processamento
```
./scripts/process.sh ./Porg/raw/POBF_R1.fastq ./Porg/raw/POBF_R2.fastq ./Porg
./scripts/process.sh ./Porg/raw/POF_R1.fastq ./Porg/raw/POF_R2.fastq ./Porg
./scripts/process.sh ./Porg/raw/POC_R1.fastq ./Porg/raw/POC_R2.fastq ./Porg
```
### Montagem - Trinity
`./scripts/trinity_denovo.sh ./Porg/processed/prinseq/ ./Porg`
### Busco:
- Default:
`run_BUSCO.py -c 20 -i ./Porg/trinity/trinity_assemble/Trinity.fasta -o BUSCO_PO_dft -l /usr/local/bioinfo/busco_lineage/embryophyta_odb10 -m tran`
-- Para geração do gráfico:
`generate_plot.py -wd run_BUSCO_PO_dft`
- 02:
`run_BUSCO.py -c 20 -i ./Porg/trinity/trinity_assemble_02/Trinity.fasta -o BUSCO_PO_02 -l /usr/local/bioinfo/busco_lineage/embryophyta_odb10 -m tran`
-- Para geração do gráfico:
`generate_plot.py -wd run_BUSCO_PO_02`
- 03:
`run_BUSCO.py -c 20 -i ./Porg/trinity/trinity_assemble_03/Trinity.fasta -o BUSCO_PO_02 -l /usr/local/bioinfo/busco_lineage/embryophyta_odb10 -m tran`
-- Para geração do gráfico:
`generate_plot.py -wd run_BUSCO_PO_03`
- AV:
`run_BUSCO.py -c 20 -i ./Porg/trinity/trinity_AV/Trinity.fasta -o BUSCO_PO_AV -l /usr/local/bioinfo/busco_lineage/embryophyta_odb10 -m tran`
-- Para geração do gráfico:
`generate_plot.py -wd run_BUSCO_PO_AV`
A melhor foi a default: Menos genes faltantes e fragmentados.
### Transrate:
- Default:
`./scripts/Transrate.sh ./Porg/processed/prinseq/ ./Porg/trinity/trinity_assemble/Trinity.fasta ./Plant_Development/refs_assembled_evaluation/ ./Porg/`
- Tamanho minimo de contig: 600 - montagem 02
`./scripts/Transrate.sh ./Porg/processed/prinseq/ ./Porg/trinity/trinity_assemble_02/Trinity.fasta ./Plant_Development/refs_assembled_evaluation/ .`
- Montagem 03:
--min_kmer_cov (min count for K-mers to be assembled by Inchworm, default: 1): 3
--min_glue (min number of reads needed to glue two inchworm contigs together, default: 2): 5
`./scripts/Transrate.sh ./Porg/processed/prinseq/ ./Porg/trinity/trinity_assemble_03/Trinity.fasta ./Plant_Development/refs_assembled_evaluation/ .`
- Montagem AV:
`./scripts/Transrate.sh ./Porg/processed/prinseq/ ./Porg/trinity/trinity_AV/Trinity.fasta ./Plant_Development/refs_assembled_evaluation/ .`
#### Colocando script no PATH:
`export PATH="<caminho do dir. do script>:$PATH"`
#### Para rodar o transrate com parametro min_contig iguais (para poder comparar scores)
script: remove_seq.sh - retirei do site:
https://www.biostars.org/p/79202/
comando: `perl remove_seq.pl 600 ../Porg/trinity/trinity_AV/Trinity_AV.fasta > ../Porg/trinity/trinity_AV/Trinity_AV-l600.fasta`
`perl remove_seq.pl 600 ../Porg/trinity/trinity_assemble/Trinity.fasta > ../Porg/trinity/trinity_assemble/assemble_default_l-600.fasta`
- Para contar o número de sequencias do arquivo:
```
grep -c "^>" ./Porg/trinity/trinity_AV/Trinity_AV.fasta
grep -c "^>" ./Porg/trinity/trinity_AV/Trinity_AV-l600.fasta
```
#### Transrate depois de filtrar as sequencias menores que 600pb:
`../scripts/Transrate.sh ../Porg/processed/prinseq/ ../Porg/trinity/trinity_AV/Trinity_AV-l600.fasta ../Plant_Development/refs_assembled_evaluation/ .`
`../scripts/Transrate.sh ../Porg/processed/prinseq/ ../Porg/trinity/trinity_assemble/assemble_default_l-600.fasta ../Plant_Development/refs_assembled_evaluation/ .`
### Predição de orfs
- Software: Transdecoder
- Linhas de comando:
```
../programas/TransDecoder-TransDecoder-v5.5.0/TransDecoder.LongOrfs -t ./trinity/Trinity.fasta
#Para buscar por homologia:
blastp -query ./Trinity.fasta.transdecoder_dir/longest_orfs.pep -db /usr/local/bioinfo/Oyster_River_Protocol/software/diamond/swissprot -max_target_seqs 1 -outfmt 6 -evalue 1e-5 -num_threads 15 > blastp.outfmt
hmmscan --cpu 8 --domtblout pfam.domtblout /data/db/Pfam-A.hmm ./Trinity.fasta.transdecoder_dir/longest_orfs.pep
# Predição utilizando as saídas anteriores
../../programas/TransDecoder-TransDecoder-v5.5.0/TransDecoder.Predict -t ../trinity/Trinity.fasta --single_best_only --retain_pfam_hits pfam.domtblout --retain_blastp_hits blastp.outfmt
#parâmetro --single_best_only: para ter apenas 1 predição por sequência! é melhor! com esse parâmetro, agora vc tem apenas 1 única proteína por isoforma.
então se eu verificar no association os .p únicos são 71479
grep -v '^#' association | cut -f 1 | nsort -u | wc -l
e tirando o .p (ou seja, isoformas) são os mesmos 71479
grep -v '^#' association | cut -f 1 | sed 's/\.p.*//' | nsort -u | wc -l
no comando acima, usei o sed
mas não é isso que precisa para o association (ver abaixo)
```
#### Anotação Funcional - EggNOG mapper
`emapper.py -i ./TransDecoder/Trinity.fasta.transdecoder.pep --output PO -m diamond`
#### Anotação funcional - pannzer
- OBS: Ativar primeiro o ambiente python 3: `pyenv activate rseqc`
```
python /usr/local/bioinfo/SANSPANZ.3/runsanspanz.py -m Pannzer -s "Arabidops
./TransDecoder/Trinity.fasta.transdecoder.pep -o 'sans.tab,DE.out,GO.out,anno.out' -R -k 100
```