Sobre o material da aula

Que bom que você resolveu se aventurar no ambiente R. Ele é uma ferramenta poderosa para análise e visualização de dados.

O R é uma linguagem de programação e ambiente de software livre.

Devido ao seu poder e flexibilidade, é amplamente utilizado para análise estatística, manipulação de dados e visualização gráfica.

É possível encontrar uma vasta gama de pacotes que facilitam a realização de análises complexas e a criação de gráficos sofisticados.

Em minha formação como bióloga e cientista, dominar a linguagem R foi um fator importante para que eu tivesse autonomia na minha pesquisa.

Costumo dizer frequentemente a colegas e alunos que “o R é nosso amigo” e que não há motivos para ficar amedrontada(o) com a programação. Contudo, o R, assim como qualquer outra linguagem de programação, é apenas uma ferramenta. Embora seja uma ferramenta poderosa, a parte fundamental da análise de dados continua sendo a pessoa por trás do teclado. Nada substitui o seu conhecimento sobre o modelo de estudo e as perguntas científicas que só você pode formular.

Se você ainda não fez a instalação do R e do RStudio siga as etapas abaixo e garanta que está tudo funcionando antes de começarmos a compreender a linguagem R.

1. Instalando o R

O R pode ser baixado e instalado a partir do site oficial do CRAN (Comprehensive R Archive Network).

Passos para instalação do R:

  1. Acesse o site do CRAN:
  2. Escolha seu sistema operacional:
    • Clique na opção correspondente ao seu sistema operacional:
      • Windows: Clique em “Download R for Windows” e, em seguida, clique em “base” para baixar o instalador.
      • macOS: Clique em “Download R for macOS” e escolha o arquivo .pkg mais recente.
      • Linux: Siga as instruções específicas para sua distribuição (como Ubuntu, Fedora, etc.) na seção “Download R for Linux”.
  3. Baixe o instalador:
    • Após clicar na opção correspondente, siga as instruções para baixar o arquivo de instalação.
  4. Instale o R:
    • Execute o instalador baixado e siga as instruções na tela para completar a instalação.

2. Instalando o RStudio

RStudio é um ambiente de desenvolvimento integrado (IDE) para R que facilita a programação e análise de dados.

Passos para instalação do RStudio:

  1. Acesse o site do RStudio:
  2. Escolha a versão:
    • Role para baixo até a seção “Installers” e selecione a versão correspondente ao seu sistema operacional:
      • RStudio Desktop (versão gratuita) é a opção mais comum.
      • Clique no botão de download para Windows, macOS ou Linux.
  3. Baixe o instalador:
    • Após clicar no botão de download, o arquivo de instalação será baixado.
  4. Instale o RStudio:
    • Execute o instalador baixado e siga as instruções na tela para completar a instalação.

3. Verificando a Instalação

Após instalar o R e o RStudio:

  1. Abra o RStudio:
    • O RStudio deve abrir automaticamente o R como um console na parte inferior da interface.
  2. Verifique se a instalação foi bem-sucedida:
    • Você pode testar a instalação digitando R.version no console do RStudio e pressionando Enter. Isso deve exibir informações sobre a versão do R instalada. Mas sugiro que antes de testar você leia toda essa parte introdutória do material.

Trabalhando com scripts

Na nossa rotina de estudos vamos utilizar scripts, que são arquivos de texto que contém uma série de comandos e instruções escritas. É um arquivo de texto simples, salvo com a extensão .R, que pode ser editado em qualquer editor de texto, mas podemos utilizá-lo com mais eficiência no RStudio. Um script pode conter uma sequência de comandos que são executados na ordem em que aparecem. Isso permite que você escreva e salve um fluxo de trabalho completo, como os exemplos disponíveis nessa aula.

Um script em R é uma ferramenta poderosa que facilita a programação e a análise de dados, permitindo que os usuários organizem, automatizem e compartilhem seu trabalho de maneira eficiente. Uma vez que você tiver seu script salvo, você poderá executar as mesmas análises novamente e até compartilhar o arquivo para que outros usuários executem essas análises.

Dentro do RStudio, para criar um script novo você pode usar um desses atalhos:

    1. No canto superior esquerdo da tela, clicar na figura abaixo da palavra File
    1. Usar o atalho no teclado: Ctrl + Shift + N

Entendendo o RStudio

O RStudio vai apresentar muitos painéis que podem ser intimidadores para novos usuários. Não é preciso se preocupar em entender o funcionamento detalhado de todos eles logo no começo.

Captura de tela mostrando os painéis do RStudio Vamos analisar quadro a quadro a aparência dessa janela e identificar os elementos básicos importantes para começarmos a trabalhar no RStudio.

Painel do Script (Editor de Código)

Localizado na parte superior esquerda, este painel é onde você pode escrever e editar scripts em R. Ele permite criar novos arquivos, abrir scripts existentes e trabalhar com várias guias simultaneamente. Você pode executar código diretamente desse painel.

Painel dos scripts (A) grifado em vermelho. É aqui que ficam os arquvos de texto que você pode editar, oranizar e salvar como em qualquer outro editor de texto que você já está habituada/o a usar.
Painel dos scripts (A) grifado em vermelho. É aqui que ficam os arquvos de texto que você pode editar, oranizar e salvar como em qualquer outro editor de texto que você já está habituada/o a usar.

Console

Abaixo do painel do script, o console exibe a saída de comandos R executados. É onde você pode interagir diretamente com a linguagem R, executar comandos linha a linha e ver resultados instantaneamente.

Painel dos console (B) grifado em vermelho. Tudo o que for interpretado pelo R vai aparecer aqui, bem como os resultados, avisos e mensagens de erro.
Painel dos console (B) grifado em vermelho. Tudo o que for interpretado pelo R vai aparecer aqui, bem como os resultados, avisos e mensagens de erro.

Painel de Ambiente e Histórico

Localizado na parte superior direita, este painel é dividido em duas seções principais:

Ambiente: Exibe uma lista de objetos atualmente carregados na sessão, como data frames, vetores e listas, permitindo que você visualize suas variáveis e dados.

Histórico: Mostra um histórico dos comandos que foram executados na sessão atual, facilitando a revisão e reutilização de código.

Painel Ambiente e Histórico (C) grifado em vermelho. Nesse espaço você vai poder conferir todos os dados que você importar ou criar no R e revisar os comandos executados na seção.
Painel Ambiente e Histórico (C) grifado em vermelho. Nesse espaço você vai poder conferir todos os dados que você importar ou criar no R e revisar os comandos executados na seção.

Painel de Arquivos, Plots, Pacotes e Ajuda

Este painel, na parte inferior direita, é dividido em várias abas importantes:

Arquivos: Permite navegar por diretórios (pastas), abrir e gerenciar arquivos no seu sistema.

Plots: Exibe gráficos gerados na sessão. Você pode visualizar, salvar e exportar gráficos a partir dessa aba.

Pacotes: Mostra os pacotes R instalados, permitindo que você carregue ou instale novos pacotes facilmente.

Ajuda: Fornece acesso à documentação do R e de pacotes específicos. Você pode buscar ajuda sobre funções e pacotes diretamente nessa aba. Aqui que você vai encontrar a solução para muitas dúvidas.

Painel Arquivos, Plots, Pacotes e Ajuda (D) grifado em vermelho. Aqui estão reunidos vários recursos importantes que podem ajudar no aprendizado e no uso de forma autônoma da linguagem R.
Painel Arquivos, Plots, Pacotes e Ajuda (D) grifado em vermelho. Aqui estão reunidos vários recursos importantes que podem ajudar no aprendizado e no uso de forma autônoma da linguagem R.

Executar as linhas do script no console do R

Uma vez que você tenha o código no seu script é muito fácil executá-lo. Você pode executar diretamente no console ou executar o script todo.

Executar Linha por Linha: Selecione a linha que contém a definição da função e pressione Ctrl + Enter (ou Cmd + Enter no Mac). Isso enviará o código para o console e definirá a função.

Executar o Script Inteiro: Para executar todo o script, clique em Run no canto superior direito do painel de script ou pressione Ctrl + Shift + Enter (ou Cmd + Shift + Enter no Mac).

Fazer comentários no script

No script, o interpretador entende todo o texto precedido de # como um comentário.Ou seja, não é um código R e não será interpretado. Portanto trata-se de uma ferramenta para facilitar a interpretação do script pelo usuário.

Essa é uma ferramenta importante que pode facilitar muito seu aprendizado. Você pode, por exemplo, deixar avisos, mensagens, lembretes e explicações importantes para o seu entendimento do código.

# Esse é um comentário e não vai ser interpretado pelo R, serve apenas para informar o usuário

Objetos

R é uma linguagem super flexível, que permite utilizar programação orientada a objetos. Isso é particularmente útil quando estamos trabalhando com análise de dados. Mas o que vem a ser esses chamados ‘objetos’?

Em R, os objetos são qualquer entidade que pode armazenar dados ou informações e sobre a qual operações podem ser realizadas. Isso significa dizer que quase tudo em R é um objeto.

Para facilitar, podemos entender os tipos de objetos em R. Os objetos podem ser classificados em diferentes classes, e podem ser manipulados através de métodos ou funções específicas.

Vetôres atômicos

Em R, os tipos de dados são as formas mais básicas de representação de dados. Você também também encontrá-los nas suas leituras como tipos atômicos.

Vetores atômicos são caracterizados principalmente pela homogeneidade (todos os elementos de um vetor atômico devem ser do mesmo tipo) e unidimensionalidade (são dados unidimensionais).

# Exemplo:

v <- c(1, 2, 3)  # Vetor numérico, todos os elementos são valores numéricos
v # para printar o vetor 'v' no console
## [1] 1 2 3
is.vector(v) # retorna 'TRUE'
## [1] TRUE

Também podemos checar se um objeto pertence a uma determinada categoria utilizando uma das funções predefinidas pelo formato ’is.*’. São um conjunto de funções que retornam um valor lógico (TRUE se for verdadeiro ou FALSE se for falso).

Por exemplo, para checar se o objeto ‘v’ criado anteriormente é de fato um vetor, podemos utilizar a função ‘is.vector(v)’. É como se perguntássemos ao interpretador “Esse objeto é um vetor?” ao que ele responde sim (TRUE) ou não (FALSE).

# Exemplo:

is.vector(v) # retorna 'TRUE'
## [1] TRUE
is.data.frame(v) # retorna 'FALSE', visto que 'v' é um vetor e não um 'data frame' 
## [1] FALSE

Os principais tipos de dados em R:

1. Numeric (Numérico)

Representa números (decimais ou inteiros).

Por padrão, números são tratados como números de ponto flutuante (decimais).

# Exemplo:


x <- 10.5  # Numérico (ponto flutuante)
x # para printar o valor no console
## [1] 10.5
y <- 5     # Numérico (inteiro tratado como decimal)
y # para printar o valor no console
## [1] 5

Você pode usar uma função (logo mais veremos o que são funções, não se preocupe) para identificar o tipo de um objeto. Existem muitas funções disponíveis mas agora, para fins didáticos, vamos usar a função ‘class()’, que recebe como argumento o objeto que criamos contendo o valor.

y <- 5     
y # para printar o valor no console
## [1] 5
class(y) # retorna "numeric"
## [1] "numeric"

2. Integer (Inteiro)

Representa números inteiros. Você pode criar valores explicitamente inteiros usando o sufixo L.

# Exemplo:

z <- 10L  # Inteiro

z # para printar o valor no console
## [1] 10
class(z) # retorna "integer"
## [1] "integer"

3. Character (Caractere)

Representa strings de texto (sequências de caracteres). Strings em R são criadas usando aspas duplas (“) ou simples (’), é indiferente a escolha entre as duas.

# Exemplo:

texto <- "Sapos são legais!"  # Caractere

texto # para printar o valor no console
## [1] "Sapos são legais!"
class(texto) # retorna "character"
## [1] "character"

4. Logical (Lógico)

Representa valores booleanos (verdadeiro ou falso), sendo TRUE ou FALSE os dois únicos valores possíveis.

# Exemplo:
  
b <- TRUE   # Verdadeiro
c <- FALSE  # Falso

b # para printar o valor do objeto 'b' no console
## [1] TRUE
c # para printar o valor do objeto 'c' no console
## [1] FALSE
class(b) # retorna "logical"
## [1] "logical"

5. Fatores (factor):

Usados para representar dados categóricos, como níveis de uma variável qualitativa. Fatores são essencialmente inteiros com rótulos.

# Exemplo:

f <- factor(c("pequeno", "grande", "médio"))  # Fator categórico

f # para printar o fator 'f' no console
## [1] pequeno grande  médio  
## Levels: grande médio pequeno
is.factor(f) # retorna 'TRUE'
## [1] TRUE

Além dos tipos atômicos, é importante lembrar que esses tipos são usados dentro de estruturas de dados como vetores, listas, matrizes e data frames. Nesses casos, o tipo de dado atômico define o conteúdo dos elementos.

Estruturas de Dados compostas

Diferentemente dos vetores atômicos, as estruturas de dados compostas agrupam tipos de dados heterogêneos, ou seja, podem conter elementos de diferentes tipos ou formatos.

Listas:

Uma lsita é um tipo de vetor. Listas são estruturas que podem conter diferentes tipos de dados, incluindo outros objetos, como vetores, matrizes, e até outras listas. Listas são muito flexíveis e podem armazenar qualquer tipo de objeto.

# Exemplo:

l <- list(1, "texto", TRUE)  # Lista com tipos mistos
l # para printar a lista 'l' no console
## [[1]]
## [1] 1
## 
## [[2]]
## [1] "texto"
## 
## [[3]]
## [1] TRUE
is.list(l) # retorna 'TRUE'
## [1] TRUE

Estruturas de dados compostas multidimensionais

Organizam dados em mais de uma dimensão, como tabelas (linhas e colunas) ou matrizes de várias dimensões.

Matrizes (matrix):

Estruturas bidimensionais que contêm elementos de um único tipo. São essencialmente vetores com dimensões (linhas e colunas).

# Exemplo:

m <- matrix(1:6, nrow = 2, ncol = 3)  # Matriz 2x3 (2 linhas x 3 colunas)

m # para printar a matriz 'm' no console
##      [,1] [,2] [,3]
## [1,]    1    3    5
## [2,]    2    4    6
is.matrix(m) # retorna 'TRUE'
## [1] TRUE

Arrays (array):

Objetos com mais de duas dimensões, como uma generalização das matrizes. Os arrays podem ter qualquer número de dimensões.

# Exemplo:

a <- array(1:12, dim = c(2, 3, 2))  # Array com 3 dimensões

a # para printar o array 'a' no console
## , , 1
## 
##      [,1] [,2] [,3]
## [1,]    1    3    5
## [2,]    2    4    6
## 
## , , 2
## 
##      [,1] [,2] [,3]
## [1,]    7    9   11
## [2,]    8   10   12
is.array(a) # retorna 'TRUE'
## [1] TRUE

Data Frames:

Um tipo especial de lista em que todos os elementos são vetores de mesmo comprimento. São amplamente usados para representar dados tabulares. Ou seja, são como tabelas, onde cada coluna pode ter um tipo de dado diferente.

# Exemplo:

df <- data.frame(nome = c("Ana", "Beto"), idade = c(30, 40))  # Data frame com colunas de tipos diferentes

df # para printar a data frame 'df' no console
##   nome idade
## 1  Ana    30
## 2 Beto    40
is.data.frame(df) # retorna 'TRUE'
## [1] TRUE

Outros tipos de objeto

Funções (function):

Até mesmo as funções são objetos em R. Elas podem ser atribuídas a variáveis e passadas como argumentos para outras funções. Não é necessário se aprofundar nos detalhes das funções nesse primeiro momento, basta saber que elas também são objetos.

# Exemplo:

f <- function(x) x^2  # Função que calcula o quadrado de um número

f # para printar a função 'f' no console
## function(x) x^2
is.function(f) # retorna 'TRUE'
## [1] TRUE
f(2) # executa a função e retorna o resultado ( 2 ao quadrado é igual a 4)
## [1] 4

O R ainda permite trabalhar com outros obejtos, como modelos estatísticos (lm, glm etc.) e objetos de sistemas de orientação a objetos (S3 e S4). Nosso objetivo nesse momento não é detalhar as complexidades desses tipos de objetos. Vamos explorar mais a linguagem R e suas funcionalidades.

Verificar o Tipo de Dado em R

Até agora você já conhece duas formas de verificar o tipo de dados em R:

1- a função ‘class()’ 2- e as funções predefinidas pelo formato ’is.*‘, como ’is.numeric()’ e ‘is.vector()’

Uma outra opção é a função ‘typeof()’: Enquanto ‘class()’ mostra a classe a que o objeto pertence ‘typeof()’ retorna o tipo interno do dado.

# Exemplo:

x <- 42 # atribui o valor de 42 ao objeto 'x'

typeof(x)  # Retorna "double" (ponto flutuante)
## [1] "double"
class(x)   # Retorna "numeric"
## [1] "numeric"

Converter Dados

É possível converter tipos de dados em R usando funções como as.numeric(), as.character(), as.logical() etc.

# Exemplo:


a <- "42" # Atribui o valor de "42" ao objeto 'x'

class(a) # Retorna 'character'
## [1] "character"
a # Note que o número está grafado entre aspas. 
## [1] "42"
# Esse formato na linguagem R significa que este número está armazenado como um 'character' ou 'string', ou seja, como texto.

b <- as.numeric(a)  # Converte a string "42" para número 42

class(b) # Retorna 'numeric'
## [1] "numeric"

Revisando:

Objetos:

  • A linguagem R nos permite manipular objetos
  • Os objetos armazenam informações que usamos em nossas análises

Tipos comuns de Dados Atômicos em R:

São a base para manipulação de dados e construção de estruturas mais complexas em R. São homogêneos e unidimensionais

  • Numeric: Números decimais ou inteiros (ponto flutuante).
  • Integer: Números inteiros.
  • Character: Strings de texto.
  • Logical: Valores booleanos (TRUE ou FALSE).
  • Factor: Valores categóricos.

Estruturas de Dados Compostas:

Agrupam tipos de dados heterogêneos, ou seja, podem conter elementos de diferentes tipos ou formatos. Exemplos: listas e data frames.

Estruturas de Dados Multidimensionais:

Organizam dados em mais de uma dimensão, como tabelas (em linhas e colunas) ou matrizes de várias dimensões. Exemplos: matrizes e arrays.

Fim :)

Espero que esse material tenha ajudado de alguma forma e fico à disposição para esclarecer o que for necessário.


Dra. Fernanda Rodrigues de Avila https://avilaf.github.io/