Escolar Documentos
Profissional Documentos
Cultura Documentos
O ambiente R é flexível
Pode ser estendido através de pacotes
Open Source e gratuito
2 2/36
Introdução ao R
O R pode rodar tanto em console quanto em uma IDE
IDE recomendada:
Rstudio (https://www.rstudio.com/products/rstudio/download/)
Disponível para Windows, Linux e Ubuntu
3 3/36
Uso inicial do R – O R como calculadora
A forma de uso mais básica do R é usá-lo como calculadora
4/36
Atribuição de variáveis
O R permite o uso dos operadores "=", "<-" e "->" como
sinais de atribuição
No entanto, a comunidade mundial aderiu ao padrão "<-" ex:
a = 2 + 2
texto = “Olá Mundo”
a <- 2 + 2
2 + 2 -> a
Obs.Como convenção, utiliza-se o padrão chamado "camel case", que especifica que a separação
de palavras se dá pelo uso de uma letra maiúscula na palavra seguinte (ex: "valorTotal")
5 5/36
Observações importantes
Comandos são separados por “;” ou por novas linhas
b = 2 + 2; print(b)
[1] 4
Para ajuda
help(<nome do comando>)
?<nome do comando>
Se não sabe o nome corretamente
help.search("<parte do comando>")
apropos("parte do nome do comando")
6 6/36
Tipos básicos de dados
Numérico
a = 2 + 2
Caractere
c = “Olá mundo"
Lógico
d = (7 > 3)
7 7/36
Tipos de Dados – NUMERIC
Quando um número é associado a uma variável, sem definir o específico
tipo de dado, o R assume como sendo numeric. Ex:
a <- 155.27
Funções básicas:
# Isso não é um número, é um texto
texto <- "35"
8/36
Tipos de Dados – INTEGER
Para definir valores como inteiros basta adicionar a letra L ao final do
número
Consome a mesma quantidade memória do tipo numeric, entretanto, se
um objeto trabalha somente valores inteiros, defini-lo como integer irá
otimizar seu processamento. Ex:
a <- 155L
Funções básicas:
# Isso não é um número, é um texto
texto <- "155.27"
9/36
Tipos de Dados – CHARACTER (string)
Qualquer conteúdo alfanumérico escrito entre aspas simples ou duplas é
tratado como character (string). Ex:
# Define uma frase com aspas duplas
textoAspasDuplas <- "Olá mundo!"
# Exibe conteúdo
textoAspasDuplas
# Exibe conteúdo
textoAspasSimples
# Exibe conteúdo
textoAspasSimplesDentro
10/36
Tipos de Dados – CHARACTER (string)
Algumas funções úteis para strings:
# Mensagem em texto (string)
mensagem <- "Laboratório de Introdução à Programação"
# quantidade de caracteres
totalChars = nchar(frase)
totalChars
11/36
Tipos de Dados – CHARACTER (string)
Algumas funções úteis para strings:
# Converte para maiusculo
maiusculo <- toupper(frase)
maiusculo
12/36
Tipos de Dados – LOGICO (BOOLEANO)
Valores boleanos ou lógicos são objetos utilizados em testes condicionais
O valor FALSO é armazenado como 0L e TRUE como 1L
Para definir verdadeiro basta associar TRUE ou T e para definir como
falso utilize FALSE ou F. Ex:
13/36
Funções do R
O R tem diversas funções que podemos usar para fazer
os cálculos desejados
14/36
Funções do R
15/36
Exercícios
1. Utilizando variáveis, imprima a média aritmética entre os
números 5, 8,12.
16/36
Exercícios
5. Calcule a conversão entre graus centígrados e Fahrenheit.
Para isso, armazene o valor em graus celsius em uma variável
e calcule com base na fórmula a seguir. Após calcular o
programa deve imprimir o resultado da conversão.
9 × 𝐶 + 160
𝐹=
5
Em que:
F = Graus em Fahrenheit
C = Graus Celsius
Obs. Use a função paste() para apresentar as mensagens contendo o
texto e os resultados
17/36
Exercícios
6. Calcule quantidade de litros de combustível consumidos em uma viagem,
sabendo-se que o carro faz 12 km por litro de combustível. O programa deverá
armazenar em variáveis o tempo decorrido na viagem e a velocidade média e
aplicar as fórmulas:
𝐷 =𝑇×𝑉
𝐷
𝐿=
12
Em que:
D = Distância percorrida em horas
T = Tempo decorrido
V = Velocidade média
L = Litros de combustível consumidos
18/36
Exercícios
7. A partir da base e a altura de um retângulo, calcule e
apresente o perímetro e a área deste retângulo.
19/36
Principais Operadores Aritméticos e Lógicos
20/36
Operadores Lógicos e Tabela Verdade
21/36
Objetos do R
Os tipos de objetos básicos do R são:
vetores: uma sequência de valores numéricos ou de
caracteres
matrizes: coleção de vetores em linhas e colunas, todos os
vetores dever ser do mesmo tipo (numérico ou de caracteres)
dataframe: o mesmo que uma matriz, mas aceita vetores de
tipos diferentes (numérico e caracteres)
listas: conjunto de vetores, dataframes ou de matrizes
funções: as funções criadas para fazer diversos cálculos
também são objetos do R
22/36
Vetores
Entrando com dados com "c"oncatenate
valores = c(6, 7, 4, 3, 2, 0, 0, 6)
valores
[1] 6 7 4 3 2 0 0 6
23 23/36
Vetores
Selecionando valores de vetores
valores[1] # O índice da primeira posição do vetor é 1
[1] 6
valores[4]
[1] 3
valores[3:5]
[1] 3 2 0
valores[-3] # Seleciona todos os valores, menos o terceiro
[1] 6 7 3 2 0 0 6
24 24/36
Exercícios:
Explique cada um dos commandos a seguir:
a) vetor <- c(1,2,3,4,5,6,7,8,9)
b) vetor = (1:9)
c) vetor = (9:1)
d) seq(1, 9, by = 2)
e) seq(1, 9, by = pi)
f) seq(1, 9, by = 0.5)
g) rep(1, 10)
h) rep(vetor, 5)
i) rep(vetor, each = 5)
25 25/36
Operações básicas com vetores
Somatório sum(<variável>)
Produtório prod(<variável>)
Tamanho do vetor length(<variável>)
Ordenação sort(<variável>)
Valor absoluto abs(<variável>)
Raiz quadrada sqrt(<variável>)
Valor mínimo min(<variável>)
Valor máximo max(<variável>)
26 26/36
Operações estatísticas
Média aritmética
mean(<nome do vetor>)
Mediana
median(<nome do vetor>)
Variância
var(<nome do vetor>, na.rm = FALSE)
Desvio padrão
sd(<nome do vetor>, na.rm = FALSE)
se na = TRUE, os missing values serão removidos
27 27/36
Missing values
Algumas operações podem retornar resultados
"inexistentes", chamados “missing values”
Inf: infinito positivo
-Inf: infinito negativo
NA: "Not Available“
Existem funções para testar se algum desses valores foi
retornado, onde x pode ser um vetor:
is.finite(x)
is.infinite(x)
is.na(x)
O retorno dessas funções é um Booleano, definido em R como
TRUE ou FALSE
28 28/36
Exemplo Vetores
Considere os seguintes dados levantados pelo setor de segurança do trabalho para
verificar os possíveis riscos na saúde de seus funcionários:
Nome José Paulo Pedro Lucas Arthur Gustavo
Peso (kg) 60 72 57 90 95 72
Altura (m) 1.75 1.80 1.65 1.90 1.74 1.91
30/36
Exemplo Vetores - Solução
# d) Qual o funcionário mais baixo
menorAltura = min(alturas)
nomes[alturas == menorAltura]
31/36