Escolar Documentos
Profissional Documentos
Cultura Documentos
31 de julho de 2020
Campinas -SP
Docente Responsável
Prof. Dr. Marcelo Mendes Brandão
Discentes
Angie Alejandra Calderon Fajardo
Arilson Bernardo dos Santos Pereira Gomes
Augusto Kalsing
Bradley Joseph Smith
Bruna Toledo Nunes Pereira
Damaris Batistão Martim
Davi de Castro Gomes
Felipe Moreira de Almeida
Gisele Cristina de Lima
Irene Layane de Sousa
Larissa Escalfi Tristão
Lucas Souza de Bem
Tamylin Kaori Ishizuka
Yohans Alves de Moura
2
Introdução à Bioinformática 5
Automatização de Análises 16
Conhecendo o Shell Scripting - Programação BASH 17
Anotação do genoma 55
Anotação estrutural 57
Anotação funcional 58
Ferramentas de anotação 58
Recursos de nucleotídeos 58
Recursos proteicos 58
Recursos no domínio das proteínas 59
Aglomerado de grupos ortólogos 59
Vias metabólicas 59
Interações proteicas 59
Bancos de dados estruturais 59
Programas de previsão de genes: 59
Rodando DeNSAS 60
Coleta de dados 60
Montar descrição 62
Montar anotação 63
3
Como Analisar a Expressão Diferencial 63
Usando o RStudio 64
Criando um Projeto e Arquivo Novo 64
Carregamento dos Pacotes e Arquivos 65
Inserção de chunks 65
Bioconductor 66
edgeR 66
limma 67
Lendo e Carregando Tabelas 67
Arquivos DGEList 68
Filtragem dos dados 68
Transformação dos dados 69
Escalonamento Multidimensional 69
Matriz 71
Pesos 71
Remoção de artefatos 72
Ajuste do modelo 72
Investigação da expressão diferencial 73
Visualização da Expressão Diferencial por Heatmap 74
Enriquecimento de GOs 77
Usando TopGO em R 77
Referências 79
4
1. Introdução à Bioinformática
Augusto Kalsing
Arilson Bernardo dos Santos Pereira Gomes
Damaris Batistão Martim
Larissa Escalfi Tristão
Lucas Souza de Bem
Yohans Alves de Moura
5
Comando necessário para estabelecer a conexão:
ssh -p [nome de usuário]@[endereço de IP]
Exemplo: ssh -p 922 x000000@143.106.4.87
Após o download, para acessar a VPN é preciso ter um usuário Unicamp, no caso
de alunos o RA que recebeu no ato de sua matrícula é seu usuário Unicamp, e a senha é a
mesma utilizada nos sistemas da UNICAMP, utilize-os para autenticar-se no serviço.
6
Figura 2: Interface VPN para conexão à rede da UNICAMP.
Exemplo:
Host Name (or IP address): 143.106.4.87
Port: 922
7
Figura 4: Interface PuTTY que permite acesso ao servidor.
8
O processo é simples, porém podem ocorrer erros. O link a seguir apresenta a
solução dos problemas que podem ocorrer durante a instalação no Windows 10.
Guia de instalação do Subsistema Windows para Linux para Windows 10:
https://docs.microsoft.com/pt-br/windows/wsl/install-win10?redirectedfrom=MSDN
9
Navegar pelos diretórios cd nome_do_diretório
Listar subdiretórios ls -R
10
Criar arquivo com conteúdo cat > nome_do_arquivo
Emular super usuário por um longo sudo -s (para sair o comando é exit)
tempo
11
Desligar sistema em alguns minutos sudo shutdown -h 15
12
Rankeamento de colunas sort arquivo
sort -k1 arquivo (ordem alfabética da coluna
1)
sort -k1 -r arquivo (ordem alfabética reversa
da coluna 1)
sort -k1,1 -u arquivo (ordem alfabética de
dados únicos somente da coluna 1)
sort -k5 -u arquivo (ordem numérica de dados
únicos da coluna 5)
Um sistema de controle de versões, VCS (do inglês version control system) ou ainda
SCM (do inglês source code management) na função prática da Ciência da Computação e
da Engenharia de Software, é um software que tem a finalidade de gerenciar diferentes
13
versões (mudanças) no desenvolvimento de um arquivo qualquer. Desta forma, é possível
conferir, checar e retomar versões anteriores dos arquivos, comparar as mudanças entre
cada uma das versões e saber quando e que usuário realizou cada uma das alterações
Esses sistemas são comumente utilizados no desenvolvimento de software para controlar
as diferentes versões (histórico e desenvolvimento) dos códigos fontes e da documentação.
É comum depararmos com duas ou mais “cópias” de um mesmo trabalho, mas que não
sabemos se há (e quais seriam) as diferenças entre eles. Situações como essas e inúmeras
outras podem ser resolvidas facilmente através da adoção de um sistema de controle de
versões no dia-a-dia de profissionais das mais diversas áreas de atuação.
14
Figura 7: Esquema de seções e fluxo de trabalho no GIT
Alternar entre versões (commits) git checkout 0xxxx0x (retorna para a versão
diferentes: 0xxxx0x)
15
Clonar repositório público: git clone /caminho_do_repositório_público
3. Automatização de Análises
16
funcionalidade que pode ser adicionada ao script para ajudar no debugging é o comando
“echo”, com ele é possível solicitar que apareça no terminal uma mensagem referente a
linha sendo executada naquele momento.
17
Agora é só chamar o arquivo nano utilizando o comando bash, que é o interpretador
desse arquivo. Ele vai rodar todos os dados e me dar a informação. De forma direta
podemos também simplesmente dar permissão de execução ao arquivo Shell script,
utilizando o comando que vimos acima (chmod u+x FirstScript.sh), fazendo isso, só
precisamos dizer o caminho, ou seja, onde o arquivo se encontra (./).
Para verificar se um arquivo não existe usando o Bash, você deve usar o "!" seguido
pela opção "-f" e pelo arquivo que você deseja verificar.
18
Agora vamos montar um Script que siga uma lógica dos loops, tais como “if ” e
“while”, para automatizar o download de um arquivo em um dado diretório caso ele não
exista naquele diretório, e se ele existir apareça uma mensagem avisando que o arquivo já
existe. Abaixo segue o script verificar.sh.
19
Aplicando o comando: bash verificar.sh
Figura 12: Rodando o script pela primeira vez. Como o arquivo não existia, o comando para baixar o
arquivo foi executado.
20
O ponto a ser entendido aqui é que o shell analisa os argumentos antes de
transmiti-los ao programa que está sendo chamado. Nada aconteceu, pois a ação
estabelecida pelo loop “while” já não se cumpre mais.
Agora vamos alterar o script, retirando o “while” para ele apenas nos dizer se esse
arquivo já existe no diretório Tutorial.
21
Como visto o loop if vai funcionar se o requisitado como condição for cumprido, logo
toda vez que rodarmos este script ele vai nos dizer que o arquivo aula4.zip já existe, esta
condição muda se esse arquivo for então apagado do diretório Tutorial.
Como mostrado acima, o interpretador de comandos bash ou shell, podemos criar
códigos ou scripts no sistema Linux. Esses códigos criados facilitam muito a vida do
programador ao economizar tempo, pois permitem automatizar tarefas de rotina e também
tornam mais simples ações como: abrir programas e esvaziar diretórios e lixeira, entre
outras tarefas. Mais comandos e exemplos em bash podem ser encontrados neste link:
https://devhints.io/bash.
22
terminação da reação em cadeia”, também denominado de “método de Sanger”, que se
fundamentava na inserção de dideoxinucleotídeos trifosfatados – nucleotídeos com uma
hidroxila a menos (ddNTP) – para a produção de diferentes tamanhos de fragmentos de
DNA, devido à terminação abrupta da cadeia causada pela adição de ddNTP na fita
recém-sintetizada, ademais todo o processo é realizado em ciclos de desnaturação,
anelamento e desnaturação (SANGER et al., 1977). O “método de Sanger” acabou
prevalecendo em comparação com a metodologia de Maxam & Gilbert devido à maior
confiabilidade e ao uso em menor quantidade de compostos tóxicos e radioativos (KULSKI,
2016). Por conseguinte, o reconhecimento de seu trabalho proporcionou à Sanger o Prêmio
Nobel em Química em 1980.
Os aprimoramentos do “método de Sanger” como a utilização da eletroforese capilar,
a redução do uso de reagentes radioativos, a realização de uma reação única de
sequenciamento com fluoróforos e o uso de computadores para análise de dados, foram
essencialmente importantes para o escalonamento e a automatização da análise dos
fragmentos de DNA, levando à criação dos primeiros sequenciadores automáticos
desenvolvidos pela Applied Biosystem Instruments - ABI (SMITH et al., 1986). O
sequenciamento para o Projeto Genoma Humano foi realizado com o auxílio dos
sequenciadores automáticos de eletroforese capilar, como o ABI 3700 (Figura 16), em
consequência da maior geração de dados genômicos em larga escala (MARDIS, 2013).
Figura 16: Primeiro sequenciador automático com eletroforese capilar, o ABI 3700.
23
algoritmos capazes de processar a grande variedade de dados gerados (SEIFI et al., 2017).
Outro fator importante a ser destacado é a diminuição do custo do nucleotídeo a ser
sequenciado, o que de certa forma, “democratiza” o acesso ao sequenciamento genômico
por diversos grupos de pesquisa.
O princípio básico das plataformas NGS reside no fato de imobilizar os fragmentos
de DNA ou de alguma outra molécula biológica em uma superfície sólida e, assim, executar
as reações sequenciais específicas da plataforma para o sequenciamento do material
genético. A tecnologia NGS possui o diferencial de realizar o sequenciamento paralelo de
milhões a bilhões de nucleotídeos de DNA, garantindo uma análise com melhor resolução e
mais ampla (SEIFI et al., 2017). Como exemplos de plataformas NGS há: Roche 454;
Applied BioSystems SOLiD; Illumina Solexa; IonTorrent; PacBio; Oxford Nanopore, entre
outros. Estas novas tecnologias se utilizam de várias estratégias em uma combinação de
preparação de templates, metodologia de sequenciamento, técnicas de imageamento,
alinhamento do genoma e métodos de montagem (METZKER, 2010).
Na Tabela I há um resumo dividindo cada plataforma NGS em gerações e
especificando algumas características, como: metodologia do sequenciamento, tamanho
dos reads por corrida (pb), número de reads por corrida, acurácia, tempo de corrida, o custo
por 1Mb (US$) e as vantagens/desvantagens de cada plataforma.
24
Fonte: Adaptado de GOODWIN et al.(2016); KULSKI (2016).
25
Figura 17: Exemplo de arquivo no formato .fastq.
Os caracteres da quarta linha são interpretados de acordo com Phred Score Quality,
uma escala logarítmica que segue a fórmula: Q = -10 log10 P. P corresponde à probabilidade
da leitura da base ter sido feita corretamente pelo sequenciador e Q é o valor do Quality
Score, como visto na tabela abaixo.
10 1 em 10 90%
20 1 em 100 99%
30 1 em 1000 99,9%
40 1 em 10000 99,99%
50 1 em 100000 99,999%
O objetivo desta etapa da análise dos dados é verificar a qualidade das sequências
e demais problemas que estejam ali, ou seja, retirar dos dados partes que podem
comprometer a robustez e a confiabilidade das análises nos passos posteriores.
Primeiramente deve-se avaliar a qualidade, e para isso o software detalhado aqui será o
FastQC, uma suite de aplicações que permite avaliar vários aspectos das sequências como,
qualidade por base, conteúdo de GC, comprimento, sequências super representadas e etc.
4.2.1. FastQC
O controle da qualidade das sequências pode ser feito através da ferramenta
FastQC Read Quality reports disponível na plataforma Galaxy (Version 0.72+galaxy1). O
FastQC permite a avaliação da qualidade de reads em formatos BAM, SAM ou FastQ
compactados ou não. Durante o processo de avaliação, cada base em cada uma das
26
milhares de sequências (reads) é lida e parâmetros individuais e médios de qualidade são
estimados. Como resultado são gerados dois arquivos: os dados brutos (raw data) e o
FastQ Report webpage. Esses arquivos contém o relatório das avaliações listados em
tópicos, porém representados de maneiras diferentes. No arquivo bruto as informações vem
tabuladas em arquivo de texto simples, já no Web Report há representações gráficas e
tabelas que facilitam a compreensão.
Figura 18: O upload de sequências no Galaxy ou obtenção de sequências de outras fontes podem ser feitos
pelos ícones circulados em vermelho.
27
Figura 19: Dados compartilhados pelo Galaxy podem ser obtidos pela aba “Shared Data”. As sequências podem
ser baixadas ou transferidas para um “History” dentro do Galaxy.
Figura 20: O “History’ armazena as sequências e os arquivos gerados pelas ferramentas de controle de
qualidade.
28
4.2.1.2. Uso do FastQC na plataforma Galaxy
O FastQC permite que sejam avaliados reads no formato single-end e pair-end,
também permite que mais de um arquivo seja inserido ao mesmo tempo para a avaliação.
Caso os reads sejam do tipo pair-end (PE) é necessário se atentar que os dois pares
estejam selecionados. A inclusão dos arquivos para avaliação pode ser feita um a um
(single dataset) ou com vários de uma só vez (multiple dataset), basta selecionar o modo
desejado, como mostrado na Figura 21 abaixo.
Figura 22: Botão “Execute” que dá início às avaliações das sequências pelo FastQC.
29
Figura 23: Acessando os resultados obtidos via FastQC na plataforma galaxy. A seleção em vermelho indica o
arquivo web page, a seta vermelha indica o ícone a ser selecionado para que os resultados sejam exibidos na
tela central.
O segundo tópico “Per base sequence quality” diz respeito a qualidade das bases
em cada sequência do arquivo baseado no Phred Quality Score. É um gráfico cujo eixo Y
30
corresponde ao valor de PQS e o X a posição das bases ao longo das sequências. Os
dados são plotados em box plots com a linha central em azul sendo a média, nas caixinhas
temos em vermelho as medianas em amarelo os limites dos quartis e os valores de máximo
e mínimo em linhas pretas. O fundo do gráficos está dividido em três faixas, sendo a verde
onde estão localizados os valores de qualidade acima de 30, considerados bom. A amarela
com valores intermediários e a vermelha com valores considerados ruins (Figura 25).
Figura 25: Gráfico do tipo box plot que representa a qualidade das bases em valores de Phred Score ao longo
das sequências (posição das bases) contidas no arquivo.
No arquivo usado como exemplo na figura acima (Figura 25), deve-se notar que a
qualidade das bases cai muito no final das sequências, ficando em valores muito baixos a
partir da posição 139. Os valores da mediana das sequências também caem, e o primeiro
quartil segue a mesma tendência, o que indica que um número grande de sequências têm
bases com baixas qualidades de leitura nestas posições. A queda no sinal das bases no
final das sequências é um artefato da técnica de sequenciamento utilizada, mas não de
maneira tão pronunciada. Diante disso o ícone vermelho contendo um ‘X’ indica que há um
problema nesse aspecto do arquivo.
O terceiro tópico “Per tile Sequence Quality” representa isso num heatmap baseado
nos valores médios de qualidade e seus desvios de cada cluster da flowcell para cada base
lida durante o sequenciamento. Os heatmaps são escalas quente-frio, onde cores mais
quentes sinalizam valores mais baixos, como vistos a partir da posição 139 (Figura 26).
Essa análise é específica para dados gerados em sequenciadores Illumina e tem como
função detectar se há algo de errado em posições específicas da flowcell.
31
Figura 26: Heatmap Per tile Sequence quality, os clusters mais claros apresentam qualidades mais baixas de
leitura das bases.
O quarto tópico “Per sequence quality score’’ é um gráfico que indica a quantidade
de sequências por valor médio de qualidade PQS. Nota-se no exemplo (Figura 27) que há
um pico no qual a maioria das sequências tiveram valores altos de qualidade (PQS >= 30).
Figura 27: Gráfico “Per sequence quality scores”, representa a quantidade de sequências e seus valores médios
de PQS.
O quinto tópico “Per base sequence content” mostra a quantidade de cada base A,
T, C e G na sequências. É importante observar se as proporções representadas em
porcentagem de A e T, C e G estejam equilibradas, seguindo a regra de Chargaff. No
32
arquivo exemplo (Figura 28) abaixo as proporções estão desbalanceadas no início das
sequências, por isso temos o ícone do X vermelho indicando problemas.
Figura 28: Porcentagem das bases nas sequências ao longo das posições.
O sexto tópico “Per sequence GC content” mostra a quantidade média das bases G
e C nas sequências. É importante atentar para particularidades de alguns organismos que
podem ter mais GC que outros, como os insetos. Neste arquivo (Figura 29) a média está um
pouco acima do comum, pois isso está sinalizado com ícone (!), indicando que este aspecto
precisa de atenção.
33
O sétimo tópico “Per base N content” se refere a porcentagem do número de bases
indeterminadas ao longo da sequências. O gráfico informa a quantidade de sequências no
eixo Y, a posição das bases indeterminadas no eixo X e a % das mesmas numa linha
vermelha (Figura 30).
O oitavo tópico “Sequence Length Distribution” diz respeito aos comprimentos das
sequências em pares de base e como elas estão distribuídas no arquivo (Figura 31). A
uniformidade no tamanho das sequências é o aspecto desejável, principalmente após a
filtragem (passos posteriores das análises), a não uniformidade no tamanho das sequências
pode indicar problemas durante o sequenciamento, como acúmulo de primers e cadeias
não estendidas no decorrer do processo.
Figura 31: Representação gráfica dos comprimentos das sequências em pares de base e suas quantidades
contidas no arquivo analisado.
34
O nono tópico “Sequence Duplication Levels” corresponde à quantidade de
sequências duplicadas no arquivo. Taxas baixas de duplicação indicam que as sequências
de interesse estão bem representadas no arquivo. Porém, taxas de duplicação muito altas
indicam que houve enriquecimento de partes aleatórias via PCR, portanto a cobertura das
sequências alvo não é boa e o sequenciamento pode estar está enviesado. Como no
exemplo da Figura 32 onde apenas 34% das sequências não estão duplicadas.
Figura 32: Representação gráfica dos níveis de duplicação, porcentagem de sequências não duplicadas em
vermelho, total de sequências em azul.
Figura 33: Sequências super representadas no arquivo, tabela contendo as sequências em pares de bases, o
número de vezes que aparecem no arquivo, a porcentagem em relação ao total e compatibilidade com alguma
fonte de origem.
35
O último tópico “Adapter content” corresponde às taxas de sequências de
adaptadores presentes usados no processo de sequenciamento pelas principais
plataformas, como exemplo a Illumina. Um alto teor de adaptadores não é desejável e pode
indicar problemas na reação de sequenciamento, como no arquivo do exemplo (Figura 34)
onde temos presença de cerca de 18% de adaptadores Nextera.
36
Figura 35: Selecionar tipo de sequências no Trimmomatic.
37
Figura 38: Inserindo adaptadores utilizados por outras plataformas de sequenciamento.
Figura 39: Parâmetros de similaridade no alinhamento dos adaptadores nas sequências analisadas.
38
● LEADING - exclui bases com qualidade abaixo do desejado no começo de
todas as sequências. O número de bases pode ser definido.
● TRAILING - exclui bases com qualidade abaixo do desejado no final de todas
as sequências. O número de bases pode ser definido.
● CROP deixa todas as sequências com o tamanho desejado
● HEADCROP - deixa todas as sequências com o tamanho desejado,
contando a partir início de todas as sequências.
● AVGQUAL - exclui sequências inteiras que estiveram com a média de
qualidade abaixo do desejado.
● MAXINFO - balanceia o comprimentos do reads e qualidade na hora de fazer
os cortes e exclusões de bases nas sequências, resultando numa maior
preservação do comprimento. Utilizando essa função há a necessidade de se
definir o comprimento desejado dos reads e o balanço entre a qualidade
das bases e o comprimento das sequências. Valores menores darão mais
prioridade a preservação do comprimentos, e valores maiores a qualidade
das bases, são permitidos valores entre 0,2 e 0,8.
Ao realizar as operações é importante notar que serão gerados dois arquivos para
cada sequência escolhida para a filtragem (no caso de reads do tipo pair end), sendo a
sequência filtrada como single-end (unpaird) e a versão filtrada juntamente com a
complementar em pair-end (paired). Portanto ao dar entrada com arquivos pair-end, é
necessário selecionar a sequência e seu complementar, e teremos como resultados final
quatro arquivos.
O arquivo utilizado aqui é o mesmo avaliado no item Uso do FastQC, que contém
sequências obtidas a partir de sequenciamento de nova geração. Resumidamente, esse
arquivo apresentou alguns problemas, alguns passíveis de correção como bases com
qualidade ruim nas porções finais das sequências (Figura 25), desbalanço da proporção de
Chargaff (Figura 28) no início e no final das sequências e presença de adaptadores (Figura
34). Usaremos as opções de filtro disponíveis citadas acima.
39
Figura 40: Seleção e configuração do filtro SLINDINGWINDOW no Trimmomatic.
Figura 41: Efeito do filtro SLINDINGWINDOW na qualidade das bases nas sequências, antes e depois.
40
Nota-se que não há mais sequências com comprimento menor que 100 pb no
arquivo (Figura 43).
Figura 43: Efeito do uso do filtro MINILEN sob o comprimento da sequências(pb), antes e depois.
Selecionar o filtro HEADCROP para que as bases iniciais das sequências sejam
removidas (Figura 44).
41
Nota-se que não há mais desproporção entre as bases (Figura 45).
Figura 45: Efeito do do uso do filtro HEADCROP no descarte de bases iniciais, antes e depois.
42
Figura 46: Selecionando e configurando o filtro ILLUMINACLIP no Trimmomatic.
43
curtas em comprimento. Uma dica é testar os efeitos separadamente e depois usá-los de
maneira combinada ao final prevendo possíveis distorções.
Figura 48: Uso combinado de funções no Trimmomatic, ao clicar no botão destacado em vermelho se tem a
opção de adicionar e configurar novas funções.
44
filtrar leituras e redirecioná-las para vários arquivos de saída. Isso inclui remoção do
adaptador, ajuste de qualidade, modificações no nome de leitura etc.
Abaixo segue listadas duas das opções disponíveis para o aprimoramento de suas
sequências utilizando o Cutadapt:
Remover a contaminação do adaptador: Essa opção é utilizada quando as sequências de
adaptadores que foram usadas durante a preparação da biblioteca são conhecidas.
Em ferramentas procure por Cutadapt, ao selecioná-lo a primeira opção será
escolher qual sequenciamento você está trabalhando, neste exemplo vamos seguir com
paired-end reads.
45
Figura 50: A sequência do adaptador é fornecida com a opção -a. Você precisa substituir AATTGGCC pela
sequência correta do adaptador.
Figura 51: A sequência do adaptador é fornecida com a opção -g. Você precisa substituir AATTGGCC pela
sequência correta do adaptador.
Para Adaptadores Illumina TruSeq: Se você tiver leituras que contêm adaptadores
Illumina TruSeq, por exemplo, siga estas etapas.
● Read 1: Na opção 3 ' (End) Adapters, insira A+ o prefixo “TruSeq Indexed Adapter”
que é comum a todas as sequências do Indexed Adapter, insira:
AGATCGGAAGAGCACACGTCT GAACTCCAGTCAC
Para as segundas leituras de dados emparelhados:
● Read 2: Na opção 3 ' (End) Adapters, insira o complemento reverso do "Adaptador
universal TruSeq":
AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGTAGATCTCGGTGGTCGCCGT
46
ATCATT. As seqüências do adaptador podem ser encontradas no documento
Illumina TruSeq Adapters De-Mystified.
Em adapter options.
Altere apenas o valor do Comprimento mínimo de sobreposição.
“Minimum length”: 25
Ele removerá leituras inferiores ao comprimento escolhido (no exemplo 25 bp), após o corte
de adaptadores e regiões defeituosas.
“Maximum length”: -
Removerá leituras maiores ao comprimento Máximo escolhido
“Max N”: -
Descarte leituras com mais que esse número de bases 'N'.
47
Obs. Você não precisa preencher todos os campos para realizar a filtragem de suas
sequências, preencha apenas os de seu interesse. Neste exemplo acrescentamos apenas
um valor mínimo de comprimento.
Em “Output Options”
“Report”: Yes
Um arquivo .txt será gerado (relatório).
Selecione Executar.
O Cutadapt produzirá um relatório e o arquivo FASTQ limpo. Abra o relatório
Cutadapt selecionando o ícone de olho no painel de histórico. Observe a distribuição de
comprimento da sequência removida.
Por fim, Use o FastQC para examinar as estatísticas de qualidade dos arquivos
FASTQ aparados com Cutadapt e compare com o FastQC original.
Você pode obter mais informações sobre uso e parâmetros utilizados no Cutadapt
no site: https://cutadapt.readthedocs.io/en/stable/guide.html.
48
Após a definição do software de origem dos dados é necessário escolher o tipo de
arquivo que será utilizado e selecionar os arquivos que serão analisados (Figura 52, passo
2 e 3). No exemplo apresentado na Figura 52, os dados foram obtidos pelo FastQC e os
arquivos do tipo “raw data” foram selecionados. Nota-se que é possível escolher mais de
um arquivo do mesmo software, assim como inserir arquivos provindos de outras
plataformas ao selecionar a opção “Insert Results”.
Após a seleção dos dados, é possível nomear o relatório que será gerado inserindo
um título na opção “Report title” e inserir comentários através do “Custom comment”. Caso
possua um grande número de amostras, a opção “Use only flat plots (non-interactive
images)” poderá ser selecionada para economizar espaço no disco, contudo, os resultados
não serão demonstrados pela forma convencional devido a economia dos recursos visuais.
Essa opção é automaticamente selecionada quando o número de amostras for maior ou
igual a 100. A opção “Output the multiQC log file?”, quando selecionada, irá gerar nos
resultados um arquivo Log, o qual é utilizado principalmente quando há necessidade de
depuração dos dados.
Quando todos os parâmetros forem definidos, a seleção do botão “Execute” irá rodar
o MultiQC para os dados selecionados, gerando na aba History do Galaxy as listas “Stats” e
“Plots” e o arquivo “Webpage”. O arquivo Webpage é uma página de resultados com
visualização dinâmica, onde é possível identificar o que cada objeto representa nas mais
diversas apresentações dos dados gerados pelo MultiQC, facilitando as análises de vários
49
dados em conjunto. Para a visualização, é necessário clicar no ícone em formato de olho
localizado abaixo do arquivo Webpage indicado pela seta na Figura 53.
Figura 53: Acessando os resultados obtidos via MultiQC na plataforma galaxy. A seta vermelha indica o ícone a
ser selecionado para a visualização dos resultados.
50
Figura 54: Os tópicos apresentados pelo MultiQC (em cinza) variam segundo o programa de origem (em azul)
dos dados utilizados.
Figura 55: General Statistics apresenta um resumo com as principais estatísticas dos dados
analisados.
Figura 56: Sequence counts demonstra o número total de sequências em cada amostra, separadas
por reads únicos (em azul) ou duplicados (em preto).
51
dentro de uma média de qualidade, respectivamente. Ambos os tópicos apresentam 3
níveis de qualidade: em verde estão as amostras que passaram no teste e que possuem um
alto número de bases ou reads com boa qualidade; em amarelo estão as amostras que
necessitam atenção; e em vermelho as amostras que reprovaram no teste e que possuem
um grande número de bases ou reads com baixa qualidade (Figura 57).
Figura 57: Qualidade das bases apresentada pelo Sequence Quality Histograms e Per Sequence
Quality Scores.
52
Figura 58: Per Base Sequence Content. Em cima está o heatmap gerado para todas as amostras e embaixo a
gráfico de linha específico de uma única amostra.
Figura 59: Conteúdo GC (“Per Sequence GC Content”) e bases uncalled (“Per Base N Content”) da sequência.
53
Figura 60: Distribuição do tamanho dos reads (“Sequence Length Distribution”) e nível relativo de duplicação
das sequências (“Sequence Duplication Levels”).
Figura 61: Sequências super representadas (Overrepresented sequences) e conteúdo de adaptadores (Adapter
Content) das amostras analisadas.
54
Por fim, o último tópico apresentado pelo MultiQC em análises de resultados
provenientes do FastQC apresenta uma visão geral do status de cada tópico discutido
anteriormente, classificando-os segundo os resultados apresentados: verde demonstra
resultados normais, laranja os resultados que necessitam de alguma atenção e em
vermelho estão os resultados que apresentaram anormalidades (Figura 62).
Figura 62: Visão geral do status dos tópicos apresentados pelo MultiQC.
5. Anotação do genoma
55
Consiste na identificação de regiões funcionais ou de relevância biológica, o que
pode incluir:
• Genes codificantes de proteínas.
• Regiões funcionais em proteínas.
• Genes de RNA não-codificantes (tRNAs, rRNAs, etc).
• Regiões de DNA repetitivo.
• Promotores, terminadores, Operons, Riboswitches e outras regiões regulatórias.
Etapas a considerar:
56
Figura 64: Pipeline de anotação de genoma integrado (CHRISTOFFELS et al., 2018).
57
como Pfam, PRODOM e SMART, podem ser usados para uma melhor caracterização
estrutural.
58
curadoria especializada, inclusão da literatura relevante e inúmeras referências cruzadas. O
volume sem precedentes de dados que exigia curadoria teve que ser subdividido em duas
coleções, a saber: UniProtKB / SwissProt - entradas de proteína validadas manualmente e
UniProtKB / TrEMBL - registros anotados computacionalmente.
O InterPro fornece um recurso unificado que vincula bancos de dados como PFAM e
Prosite. Essas proteínas são organizadas em famílias de proteínas com base em suas
assinaturas de domínio proteico.
59
● Genemark: http://exon.gatech.edu/GeneMark/
● DAVID: https://david.ncifcrf.gov/summary.jsp
● GO FEAT: http://computationalbiology.ufpa.br/gofeat/index/about
● Trinotate: https://github.com/griffithlab/rnaseq_tutorial/wiki/Trinotate-Functional-Annotation
● Blast2GO: https://www.blast2go.com/
● BMC Genomics:
https://bmcgenomics.biomedcentral.com/articles/10.1186/s12864-018-5221-9
● Galaxy:
https://galaxyproject.github.io/training-material/topics/genome-annotation/tutorials/genome-
annotation/tutorial.html#:~:text=At%20first%20you%20need%20to,the%20location%20of%
20regulatory%20motifs.
● MAKER: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4286374/
● DeNSAS
Dentro do termo, digite a pasta em que você possui Densas e escreva o seguinte
comando:
60
Assim, ele gerará vários arquivos fasta nos quais cada uma dessas seqüências
possui o número (XXXX) dividido que ele colocou. Pode ser verificado com o comando:
grep -c ">" nomedoarquivo
Em seguida, pode-se observar os diferentes bancos de dados como blast XML, onde
mostrará todos os resultados obtidos com o blast, mostrando todos os dados com o nome
da sequência, o GI, o número de acesso, o Score, PFAM e RFAM, mostra os contigs, nome,
código e probabilidade em similaridade (Figuras 66, 67 e 68).
Figura 66: Resultados após a execução do comando: ll blastXLM/ . Obtendo a maneira de comparar as
sequências com diferentes bases de dados.
Dica: toda vez que um banco de dados é usado, você deve inserir o arquivo de cada um
para ver os documentos gerados.
61
Com os dados gerados especialmente o Score, podem ser realizadas investigações
com diferentes colaboradores, usando as diferentes informações em diferentes bancos de
dados como RFAM (apresenta as familias dos RNA), PFAM (apresenta as famílias
proteicas) MEROPs e blastXLM .
Figura 69: A. Montagem descrição. B. Após a execução do comando. C. Arquivo gerado de descrição de cada
uma das contendas.
62
5.4.3. Montar anotação
63
2- Importar seus dados brutos, depois filtrando-os e processando-os.
3- Olhar para uma representação gráfica dos seus dados.
4- Definir seu modelo e a variação dos dados.
5- Ajustar seu modelo e análise estatística.
6- Examinar os dados e investigar seus genes de interesse.
Figura 71: Visão geral do RStudio com a opção de criar um projeto selecionado e marcado.
1
A primeira vez que algumas funções são usadas no RStudio, vai pedir baixar e instalar alguns pacotes
necessários. Depois de atualizar sua versão do RStudio ou R e de vez em quando, verificar para atualizações
dos seus pacotes também através de “Tools -> Check for Package Updates…” Adicionalmente, talvez seja
necessário instalar RTools, pelo link de “R Binaries”.
64
1- Cabeçalho entre o par de três traços (---), com título, autor, data e output do
arquivo.
2- Códigos (partes nos blocos em cinza, chamados chunks), que seguem a sintaxe
da linguagem especificada no cabeçalho do bloco (por padrão é R).
3- Texto (partes em branco), onde podemos adicionar observações sobre o projeto.
65
Para instalar um pacote do tipo CRAN, digite o comando install.packages (“nome do
pacote”) no chunk. Para rodar este script, pressione as teclas ALT + ENTER ou clique em
Run como indicado na figura abaixo:
Para carregar o pacote, isto é, para fazer com que suas funções se tornem
disponíveis para uso na sessão, use o comando library(nome do pacote), como no exemplo:
Figura 75: Alguns exemplos de como importar um pacote com o comando library().
6.2.2.2. Bioconductor
Para análises biológicas, além dos pacotes já inclusos na versão base do R, existe
um projeto chamado Bioconductor, que é um repositório que fornece ferramentas para a
análise e compreensão de dados genômicos de alto rendimento. Podemos acessar os
pacotes deste repositório através do site do Bioconductor. Neste tutorial, utilizaremos os
pacotes edgeR e limma.
6.2.2.2.1. edgeR
edgeR é um pacote de software Bioconductor para examinar a expressão diferencial
de dados de contagem replicados. Um modelo de Poisson super disperso é usado para
explicar a variabilidade biológica e técnica. Os métodos empíricos de Bayes são usados
para moderar o grau de super-dispersão nas transcrições, melhorando a confiabilidade da
inferência. A metodologia pode ser usada mesmo com os níveis mínimos de replicação,
desde que pelo menos um fenótipo ou condição experimental seja replicado. O software
pode ter outros aplicativos além dos dados de sequenciamento, como dados de contagem
de peptídeos proteômicos.
66
6.2.2.2.2. limma
Segundo a documentação do limma, ele é um pacote R/Bioconductor para a análise
de dados de microarray e RNA-seq da expressão gênica, especialmente para o uso de
modelos lineares estatísticos para analisar experimentos e avaliar a expressão diferencial.
Limma possibilita a análise de comparações entre múltiplos alvos de RNA simultaneamente
em experimentos complicados arbitrários. Métodos empíricos de Bayes são usados para
fornecer resultados estáveis, mesmo quando o número de arrays é pequeno. As funções de
normalização e análise de dados são para “two-color spotted microarrays”. As funções de
modelo linear e expressão diferencial se aplicam a todas as tecnologias de microarray,
incluindo Affymetrix e outras plataformas de oligonucleotídeos de único canal.
Para visualizar uma tabela que está salva como variável no seu ambiente, basta
digitar o nome da variável e a tabela aparecerá já com suas colunas e linhas. Para mostrar
mais dados sobre a tabela, como o número de variáveis, a quantidade de linhas, o tipo de
cada variável, use o comando:
67
Para visualizar a tabela de uma forma mais limpa, tipo Excel, use o comando View.
Se quiser exportar, por exemplo, um segundo parâmetro opcional acrescentará um título à
tabela.
Esse formato também possui um valor para cada count que é para normalização,
$norm.factors, útil para bibliotecas de tamanhos diferentes. Quando o DGEList é criado, o
valor para cada contagem é 1. Para estabelecer esses valores, pode sobrescrever a mesma
variável com o comando:
2
Lembramos que existe uma diferença entre letras maiúsculas e letras minúsculas. Neste caso, é o
comando View. O comando “view()” não vai funcionar.
68
6.2.6. Transformação dos dados
Nas análises de expressão diferencial, há uma dificuldade intrínseca de considerar a
expressão de um gene na escala bruta, devido às diferenças de cobertura entre as
contagens.Com o objetivo de resolver essa problemática, a função CPM é uma importante
medida descritiva para transformar as contagens brutas em uma contagem por milhão
simples (cpm), levando em conta o tamanho das bibliotecas e normalizando os valores de
expressão para cada amostra mesmo com a diferença de cobertura existente entre os
genes.
A transformação das amostras normalmente é analisada em escala logarítmica
(lcpm) para auxiliar na plotagem dos gráficos. Quando log = TRUE, a função cpm converte
os valores para a escala log2, como observado no comando abaixo para a variável d:
69
crescente ou decrescente das similaridades, o algoritmo é quem determina qual a
configuração gráfica que melhor se ajusta aos valores experimentais.
70
6.2.8. Matriz
6.2.9. Pesos
71
6.2.10. Remoção de artefatos
O pacote sva contém funções para estimar e remover fontes de variação que podem
existir nos experimentos de RNA-seq. As variações, também denominadas de artefatos, são
das mais diversas naturezas e não são facilmente identificáveis, mas podem causar um
enorme impacto negativo no rendimento experimental.
Primeiro, cria-se um modelo nulo (m0) através da função model.matrix, com
apenas um intercept e a variável a ser analisada, que no exemplo a seguir será a “dieta”,
através do seguinte comando:
3
O argumento n.sv = 3 indica que três variáveis serão analisadas, caso o número de variáveis não
seja especificado, o número de fatores a serem analisados vão ser definidos pelo próprio sistema.
72
linear do modelo, portanto a matriz especifica quais comparações entre os coeficientes
devem ser extraídas do ajuste (mais informações sobre este comando na guia do usuário
do edgeR, seção 4.4.8-9). No exemplo abaixo, são criados três contrastes comparando
diferentes dietas (SvsM, SvsA, MvsF). Além disso, foi definido o nível (levels) como sendo
a matriz de design (fit) que fornecerá os nomes dos parâmetros de contraste como nomes
de colunas.
73
Com o comando summary(dt) é possível visualizar, em forma de tabela, a contagem
dos genes diferenciados positivamente e negativamente para cada contraste criado (SvsM,
SvsA e MvsF).
● efit: objeto criado pela função eBayes (no tópico 5.11 Ajuste do modelo)
● coef: nome da coluna que especifica qual é o contraste do modelo linear de
interesse. No exemplo, foi utilizado o contraste “SvsM”
● p.value: valor de corte para valores-p ajustados. Apenas genes com valores p mais
baixos são listados.
● sort.by: sequência de caracteres que especifica a estatística para classificar os
genes. Foi utilizado “logFC” para ordenação pelo coeficiente absoluto (alteração na
dobra de log)
● n: número máximo de genes a serem listados. Foi escolhido “Inf” que significa que
serão listados todos os genes com valores de p ajustados abaixo do valor
especificado (nesse caso, abaixo do p-valor de 0.05)
74
dos genes que permite a visualização dos agrupamentos de genes e/ou condições e seus
níveis de similaridade. Na figura 67 um modelo de heatmap é apresentado. Em cada linha
vemos representado um determinado gene enquanto cada coluna representa uma condição
avaliada. A cor azul caracteriza genes positivamente regulados (ativos) e a cor vermelha
genes negativamente regulados (reprimidos). A intensidade de cada uma dessas cores está
relacionada ao grau de expressão ou repressão dos genes avaliados.
4
Consulte a documentação que descreve cada função e respectivos argumentos do pacote gplots.
75
Primeiramente são buscados os 100 genes mais significativos dentro do objeto
top_de armazenados na variável top100. Em seguida é criada uma outra variável idx na
qual são identificadas as posições onde cada gene top100 estão nas contagens por milhão
(lcmp). Com a função as.factor() é feita a conversão da coluna “amostras” do objeto
“samples” em fator5. E, por fim, com a função colorpanel() é gerado um conjunto de cores
que varia suavemente, com a definição do número desejado de elementos de cores no
painel e as cores a serem usadas para os valores mais baixo, médio e mais alto. Definido
esses parâmetros, podemos construir o heatmap conforme o código abaixo:
Em que:
● lcpm[idx,]: matriz numérica dos valores a serem plotados;
● scale = “row”: caractere indicando se os valores devem ser centralizados e
redimensionados na direção da linha ou na direção da coluna ou em nenhum. Aqui
foi escolhido o redimensionamento na direção da linha (“row”);
● trace = “none”: sequência de caracteres de rastreamento indicando se uma linha
sólida de "rastreamento" deve ser traçada na coluna "linha" ou "linha inferior",
"ambas" ou "nenhuma";
● labCol = amostras: aqui utilizamos o objeto amostras como o nome das colunas
no heatmap;
● lhei = c(2,10): controla a altura da linha;
● margins = c(7,17): vetor numérico para definir as margens das linhas e colunas;
● key = F: indica se o “color-key” deve ser mostrado. F (False) - não mostrar;
● cexRow = 0.25: números positivos, usados como eixo na rotulagem da linha;
● col = col: cores usadas para a imagem. Neste exemplo foi utilizado o objeto col
definido anteriormente pela função colorpanel().
5
Um “factor” é um objeto em R que é composto de uma lista de possíveis variáveis, e não de
números numa escala contínua. Isso é útil no modelamento de dados, porque denota que um número
representa uma categoria e não um número inteiro. Para mais informações sobre fatores, consulte a
documentação e este tutorial sobre seu uso da Berkeley.
76
6.2.13. Enriquecimento de GOs
Após gerar uma lista de genes diferencialmente expressos, uma análise pode ser
feita para olhar para o enriquecimento de domínios de GO (Gene Ontology). Existem várias
ferramentas para visualizar uma superexpressão de dados em um desses três domínios.
● CC: Cellular Component, a localização dos produtos dos genes (proteínas) na célula
ou espaço extracelular;
● MF: Molecular Function, as atividades do(s) produto(s) do gene, em termos de
atividade catalítica, domínios proteicos e interações com outros produtos; e
● BP: Biological Process, as vias biológicas que têm um início e fim definidos, e que
desempenham um papel específico na célula ou no organismo.
Para determinar se um conjunto de dados apresenta um enriquecimento de GOs,
várias ferramentas são disponíveis. As que foram mencionadas na aula6 são TopGO
(compatível com R), BiNGO (compatível com Cytoscape) e REVIGO (interface Web com
possibilidade de ser integrado em pipelines particulares).
6
Tem várias outras ferramentas que existem para a visualização de dados de GO como DAVID,
Reactome e Metascape, mas essa lista é longe de ser completa.
77
Com esses dados, o próximo passo é selecionar os genes do universo de genes que
encontram-se nos seus dados, salvando-os para uma nova lista. Com isso, pode começar
com os três domínios da GO.
78
7. Referências
Batut et al., 2018 Community-Driven Data Analysis Training for Biology Cell Systems
10.1016/j.cels.2018.05.012.
Bérénice Batut, 2020 Quality Control (Galaxy Training Materials). Disponível em: </tra
ining-material/topics/sequence-analysis/tutorials/quality-control/tutorial.html> Acesso em:
08/07/2020.
Galaxy 101- Trimming your Illumina sequencing using Galaxy. Disponível em:
<https://msi-riss.readthedocs.io/en/latest/tutorial/galaxy-101.html>. Acesso em 11/07/2020.
Christoffels, A., & van Heusden, P. (2018). Genome Annotation: Perspective From Bacterial
Genomes. Reference Module in Life Sciences. doi:10.1016/b978-0-12-809633-8.20092-7
GOODWIN, Sara; MCPHERSON, John D.; MCCOMBIE, W. Richard. Coming of age: ten
years of next-generation sequencing technologies. Nature Reviews Genetics, v. 17, n. 6, p.
333, 2016.
KULSKI, Jerzy K. Next-generation sequencing—an overview of the history, tools, and “Omic”
applications. Next Generation Sequencing–Advances, Applications and Challenges, p.
3-60, 2016.
MAXAM, Allan M.; GILBERT, Walter. A new method for sequencing DNA. Proceedings of
the National Academy of Sciences, v. 74, n. 2, p. 560-564, 1977.
Philip Ewels, Måns Magnusson, Sverker Lundin, Max Käller. MultiQC: summarize analysis
results for multiple tools and samples in a single report. Bioinformatics, Volume 32,
Issue 19, 1 October 2016, Pages 3047–3048, https://doi.org/10.1093/bioinformatics/btw354.
Robinson MD, McCarthy DJ, Smyth GK. “edgeR: a Bioconductor package for differential
expression analysis of digital gene expression data.” Bioinformatics, 26(1), 139-140, 2010.
79
SEIFI, Morteza et al. Application of next-generation sequencing in clinical molecular
diagnostics. Brazilian Archives of Biology and Technology, v. 60, 2017.
SMYTH, G. K. Linear models and empirical Bayes methods for assessing differential
expression in microarray experiments. Statistical Applications in Genetics and Molecular
Biology 3, 2004
WATSON, James D.; CRICK, Francis HC. Molecular structure of nucleic acids: a structure
for deoxyribose nucleic acid. Nature, v. 171, n. 4356, p. 737-738, 1953.
XUAN, Jiekun et al. Next-generation sequencing in the clinic: promises and challenges.
Cancer letters, v. 340, n. 2, p. 284-295, 2013.
80