Skip to content

Anotação de VCF somático utilizando a ferramenta VEP ensembl 105 desenvolvido para tarefa avaliativa

Notifications You must be signed in to change notification settings

GiovannaPrezia/vcf-somatico

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 

Repository files navigation

⚙ Anotação de VCF somático utilizando VEP-esembl 105.0 ⚙

Script passo-a-passo para anotação de variantes de um arquivo VCF através da ferramenta Ensembl Variant Effect Predictor (VEP).

Tópicos:

📃 Introdução

Um arquivo VCF (Variant Call Format) é um arquivo de dados usado que contém informações de variações de sequências de genes advindos de um DNA que passou pelo processo de sequenciamento de nova geração (NGS). Para o encontro dessas variantes existem diversas ferramentas que podem auxiliar em sua anotação e também associação de suas informações à bancos de dados afim de uma maior compreenção do que se quer estudar/analisar. Para o processamento desses dados, é possível seguir este tutorial com qualquer arquivo VCF que você possua, nós utilizamos como ferramenta suporte o Ensembl Variant Effect Predictor (VEP) para anotação.

💻 Plataforma de execução

Antes de mais nada, para o desenvolvimento de uma pipeline é necessário que se utilize uma plataforma que suporte a leitura dos scripts. Neste tutorial foi escolhida a plataforma Google Colab (https://colab.research.google.com/). Através do link pode-se conhecer um pouco mais sobre como utilizar o Colab para a escrita e execução de scripts em Python, útil para a execução deste tutorial.

🚶‍♂️ Primeiros Passos

1. Preparo inicial - Importe seu drive no Colab para localização e gerenciamento dos dados escrevendo na barra de trabalho (Terminal):

from google.colab import drive
drive.mount('/content/drive')

2. Verificação do local - Para que o Colab saiba onde está trabalhando utilize o código pwd:

!pwd

3. Resultado - O terminal deve apresentar como resultado do último código como /content:

image

🔨 Mão na Massa

Agora vamos começar baixando os arquivos necessários! Entenda os processos:

1. Instalando modulo em pandas:

import pandas as pd
import csv

2. Instalando pacotes para execução do VEP usando o código apt install:

!sudo apt install unzip curl git libmodule-build-perl libdbi-perl libdbd-mysql-perl build-essential zlib1g-dev

3. Download do VEP utilizando o código wget:

!wget -c https://github.com/Ensembl/ensembl-vep/archive/refs/tags/105.0.tar.gz

4. Descompactando os arquivos tar.gz:

!tar -zxvf 105.0.tar.gz

5. Utilizar cd para entrar no diretório do VEP e INSTALL.pl para instalar:

!cd ensembl-vep-105.0
./INSTALL.pl --NO_UPDATE
  • Você pode colar todos os comandos a partir do passo 2 em uma mesma célula e executar! (Recomendado instalar o módulo pandas separadamente)
%%bash
sudo apt install unzip curl git libmodule-build-perl libdbi-perl libdbd-mysql-perl build-essential zlib1g-dev
wget -c https://github.com/Ensembl/ensembl-vep/archive/refs/tags/105.0.tar.gz
tar -zxvf 105.0.tar.gz
cd ensembl-vep-105.0
./INSTALL.pl --NO_UPDATE 
  • Para verificar se tudo deu certo digite:
%%bash
cd ensembl-vep-105.0
./vep
  • Seu resultado deve ter esse cabeçalho:

image

O Colab salva seus arquivos em seu próprio disco, a partir desse momento ele deve estar se apresentando dessa maneira:

image

🧬Baixando arquivos para execução

Para o teste de execução do tutorial disponibilizamos um VCF. É necessário fazer o download deste arquivo presente aqui no git:

  • Arquivo em VCF para teste

    1.Vamos começar fazendo o download do arquivo WP312.filtered.vcf.gz. no Colab:

image

2.Crie um diretório com o comando mkdir e transfira o arquivo para ele:

%%bash
mkdir dados_vcf

3. Mova o arquivo VCF para o diretório criado utilizando o comando mv, apenas para organização dos dados:

!mv /content/WP312.filtered.vcf.gz /content/dados_vcf
  • Arquivo FASTA da referência

4. Também vai ser necessário fazer o download de um arquivo de sequência contendo a referência da espécie de estudo, no caso vamos baixar a ref hg19 humana usando o comando wget: obs: Desta vez pode ser um processo mais demorado (cerca de 10m) tendo em vista que o arquivo possui 2,9 GB;

!wget -c https://data.broadinstitute.org/snowman/hg19/Homo_sapiens_assembly19.fasta

5.Crie um diretório para a referência:

%%bash
mkdir referencia_fasta

3. Mova o arquivo VCF para o diretório criado utilizando o comando mv, apenas para organização dos dados:

!mv /content/Homo_sapiens_assembly19.fasta  /content/referencia_fasta

📝Anotando as variantes com o VEP

Tudo alinhado, vamos as anotações! Primeiramente, vamos entender os comandos que utilizaremos: Através do link (https://rest.ensembl.org/#VEP) é possível entender os comandos e seus outputs/saídas. No nosso script:

  • fork : quantos núcleos o Colab vai usar para executar o programa;

  • i : de input, é o local onde o programa resgata o arquivo para iniciar a execução;

  • o : de output, como o arquivo será salvo no final;

  • dir_cache : é o cache do diretório do arquivo;

  • fasta : resgata o arquivo em fasta da referência (baixada anteriormente);

  • offline : possibilidade de execução offline;

  • refseq : código que busca a referência; A partir de --pick você seleciona aquilo que deseja identificar em seus dados, na tabela das variantes que será gerado a partir do seu VCF. Através dos links inclusos na Introdução, sobre o programa VEP, você consegue identificar filtros que pode adicionar para a sua análise.

  • Comando exemplo para execução:

%%bash
./ensembl-vep-105.0/vep \
  --fork 4 \
  -i /content/dados_vcf/WP312.filtered.vcf.gz \
  -o /content/dados_vcf/WP312.output-vep.vcf.tsv \
  --dir_cache /content \
  --fasta /content/referencia_fasta/Homo_sapiens_assembly19.fasta  \
  --cache --offline --assembly GRCh37 --refseq  \
	--pick --pick_allele --force_overwrite --tab --symbol --check_existing --variant_class --everything --filter_common \
  --fields "Uploaded_variation,Location,Allele,Existing_variation,HGVSc,HGVSp,SYMBOL,Consequence,IND,ZYG,Amino_acids,CLIN_SIG,PolyPhen,SIFT,VARIANT_CLASS,FREQS" \
  --individual all
  

🐼Analisando o resultado com o pandas

Agora utilizaremos o pandas (biblioteca de software criada para a linguagem Python para manipulação e análise de dados) que nos permitira visualizar os dados gerados pelo VEP:

- Mova o arquivo VCF para o diretório criado utilizando o comando mv, apenas para organização dos dados:

tabela = pd.read_csv('/content/dados_vcf/WP312.output-vep.vcf.tsv', sep='\t', skiprows=38)
df = pd.DataFrame(tabela)
df

O seu resultado deve ser uma tabela assim: image

About

Anotação de VCF somático utilizando a ferramenta VEP ensembl 105 desenvolvido para tarefa avaliativa

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published