Conhecimentos básicos para lidar com sequências de DNA, RNA e proteínas utilizando ferramentas de R
Data de Publicação
23 de outubro de 2026
Dica
Nota: Este material foi escrito para práticas em R usando o RStudio.
Conceitos fundamentais
Polímeros biológicos como sequências
DNA, RNA e proteínas são polímeros formados por monômeros ordenados:
DNA e RNA: cadeias de nucleotídeos
Proteínas: cadeias de aminoácidos
A ordem dos monômeros codifica informação biológica e determina função e estrutura: a sequência de DNA codifica RNAs e proteínas; a sequência de aminoácidos determina estrutura tridimensional das proteínas e sua atividade; a sequência de nucleotídeos de um RNA, codificador ou não de proteínas, pode determinar regiões de auto pareamentos, que resultam em estruturas secundárias e terciárias com capacidade catalítica, semelhantemente às proteínas.
O formato fasta
O fasta armazena sequências (de DNA, RNA ou proteínas).
Como os nucleotídeos e aminoácidos são moléculas definidas e fácilmente representadas por letras, a International Union of Pure and Applied ChemistryIUPAC padronizou o código de uma letra, que toda a área da Bioinformática de sequências utiliza em suas análises de genética, genômica, transcriptômica, proteômica e outras áras afins.
O arquivo fasta é muito simples, composto por múltiplas linhas que podem ser apenas de 2 tipos:
Cabeçalho: linha iniciada por > com um identificador único da sequência e, opcionalmente, metadados.
Sequência: linhas subsequentes com as letras do alfabeto correspondente (aminoácidos ou nucleotídeos).
Muitos Bancos de Dados são dedicados para o armazenamento de sequências de DNA, RNA e proteínas. O principal destes é o NCBI nucleotide. Este banco guarda virtualmente todas sequências biológicas já registradas pela ciência, com livre acesso e possibilidade de download. Todo cientista que realiza algum estudo genético deve depositar os dados genéticos lá, para contribuir para o conhecimento coletivo.
Vamos conhecer um arquivo fasta? Siga as instruções a seguir no seu Rstudio. Copie, cole e execute os comandos abaixo
Preparativos
Carregando pacotes
Todos pacotes públicos criados para o R são de livre acesso. Qualquer usuário poide baixar e instalar com poucos comandos. Existem vários repositórios de pacotes (packages) e na bioinforática utilizamos práticamente dois:
CRAN(pacotes “gerais” do R)
Repositório amplo e genérico (estatística, web, gráficos, etc.). Publicação via install.packages(). Ciclo de versões independente entre pacotes; revisão é mais básica e não força integração entre eles.
Bioconductor(instalado/gerenciado via BiocManager)
Ecossistema focado em bioinformática/ômicas (RNA-seq, ChIP-seq, variantes, anotação, análise de dados de sequenciamento, …). Apresenta larga padronização em formatos de resultados. Possui annotation/data packages (ex.: genomas, bancos de genes) e serviços como AnnotationHub/ExperimentHub. Tem releases semestrais sincronizadas com a versão do R e checagem de compatibilidade entre pacotes, visando reprodutibilidade.
CRAN - Instalando pacotes
#instale apenas caso você ainda não tenha o pacote ----# DICA: só é preciso instalar cada pacote uma única vez# lista de pacotes CRAN que você quer garantir instaladoscran_pkgs <-c("pheatmap","stringr","BiocManager","ggseqlogo","tidyverse","RColorBrewer")# instala apenas os que não estão presentesfor (pkg in cran_pkgs) {if (!requireNamespace(pkg, quietly =TRUE)) {install.packages(pkg) }}
Bioconductor - Instalando pacotes
#instale apenas caso você ainda não tenha o pacote ----# DICA: só é preciso instalar cada pacote uma única vez# lista de pacotes Bioconductorbio_pkgs <-c("Biostrings", "DECIPHER")# instala apenas os que faltamfor (pkg in bio_pkgs) {if (!requireNamespace(pkg, quietly =TRUE)) { BiocManager::install(pkg, ask =FALSE, update =FALSE) }}
Para cada projeto, sempre crie uma pasta onde você vai salvar todos arquivos e scripts, assim você mantém seu trabalho sempre organizado. No comando abaixo, coloque dentro das aspas o caminho para o seu diretório de trabalho.
DICA: Sempre utilize a tecla TAB para autocompletar os caminhos a partir do ~ ou / (ou ****, caso no windows). Para isso, coloque o cursor (|, a barra onde sua digitação aparece) entre as ” “.
getwd()setwd("")# utilize o tab para autocompletar com o cursor entre as aspas
Agora você vai carregar para o Ambiente (Environment) do R o arquivo que você baixou, o salvando em um objeto. Vamos fazer isso com o pacote Biostrings. O pacote Biostrings é um dos pilares do ecossistema Bioconductor, amplamente usado em bioinformática, genômica e análise de sequências biológicas. Ele fornece estruturas de dados e funções eficientes para representar, manipular e analisar sequências de DNA, RNA e proteínas em R.
Vamos explorar esse objeto. As sequências parecem muito diferentes, mas na verdade só estão desorientadas. Como o DNA é dupla fita, você pode usar a informação em qualquer uma das fitas (sempre no sentido 5’ -> 3’) mas, para analisar vários DNAs juntos, é necessário colocar todos na mesma orientação.
O pacote DECIPHER oferece ferramentas para realizar a orientação, alinhamentos e visulização de sequências.
## 3 - alinhamentos ----### a - preparo ----# orientar todas sequências na mesma direção (sobrescrevendo o objeto fasta_seqs)# (se alguma estiver no complemento reverso?)fasta_seqs <- DECIPHER::OrientNucleotides(fasta_seqs)
========================================================================================================================================================================================================
Time difference of 0.12 secs
## 5 - Distâncias ----### a - calcular as distâncias ----fasta_seqs_dist <- DECIPHER::DistanceMatrix(myXStringSet = fasta_seqs_alg,includeTerminalGaps =FALSE,correction ="JC69", # Jukes-Cantor (nas versões antigas do DECIPHER: "Jukes-Cantor")processors =20)
================================================================================
Time difference of 0.01 secs
# esta é a matriz de distâncias genéticas entre essas sequências# (aqui, só um pedaço: as 5 primeiras linhas e colunas)round(fasta_seqs_dist[1:5, 1:5], 3)