Escolar Documentos
Profissional Documentos
Cultura Documentos
FAGUNDES
1 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Ambiente e Linguagem R
Comandos Básicos
Gráfico
Estatística Descritiva
2 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Ambiente R
3 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
4 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Linguagem R
■ Foi criado por Ross Ihaka e
Robert Gentleman;
■ Departamento de Estatística da
universidade de Auckland,
Nova Zelândia;
■ O nome foi inspirado nas
iniciais dos autores;
■ Foi baseado na linguagem S.
5 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Linguagem R
■ Vantagens
● Grande variedade de pacotes disponíveis
gratuitamente;
● Controle total sobre o processo de análise;
● Possibilidade de integração com outras linguagens;
● Grade comunidade de desenvolvedores;
● Muita documentação grátis;
● Excelente para a simulação, programação, análises
intensivas de computado.
6 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Linguagem R
■ Desvantagens
● Não há suporte comercial;
● Trabalhando com grandes conjuntos de
dados é limitada pela RAM
● Fácil cometer erros se não conhecer bem a
linguagem;
● Preparação e limpeza de dados pode ser
mais confusa e mais propenso erro em R.
7 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Linguagem R
■ Grande quantidade de pacotes:
● sqldf - pacote que permite realizar queries SQL em dataframes
no R;
● lm- regressão linear
● plyr - dividir uma estrutura de dados em grupos;
● stringr - manipulação de strings;
● database drivers - RMongo, RODBC, RMySQL;
● ggplot2 - visualização de dados
● caret - pacote para Machine Learning;
✔ .... quase 9.000 pacotes (https://cran.r-project.org)
8 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Instalação do R
■ Linguagem e ambiente
■ Software livre
■ Multiplataforma
● http://www.r-project.org/
■ RStudio
● https://www.rstudio.com/products/rstudio/
download/
9 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Instalação do R
10 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Instalação do R
11 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Instalação do R
12 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Instalação do R
13 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Conhecendo o Ambiente R
■ Para solicitar uma tarefa do R podemos digitar
uma linha de comando ou, se a tarefa é complexa,
digitar várias linhas de comando, respeitando-se a
sintaxe do R.
■ Esta sucessão de comandos é chamada um
programa ou código ou função. Tal programa ou
função, pode conter apenas uma linha com uma
única tarefa a ser executada como conter várias
páginas com comandos a serem executados.
14 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Conhecendo o Ambiente R
■ Os programas em R, bem como os dados a
serem explorados, podem ser armazenados
em arquivos de texto (extensão .txt);
■ Os dados também podem ser armazenados
em uma planilha de cálculo e depois, salvos
como arquivo texto para que possam ser
lidos no R.
15 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Conhecendo o Ambiente R
■ Todas as funções do R devem ser digitadas em letras
minúsculas pois o R é sensível a letras maiúsculas e
minúsculas. Todas as palavras-chaves do R estão em
letras minúsculas;
■ O R não reconhecerá,por exemplo, o comando
MEAN(x), pedindo para calcular a média de uma base
de dados x. O correto será digitar mean(x), que
retornará a média de uma base de dados x.
16 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Softwares Estatísticos
Conhecendo o Ambiente R
■ Console básico do R;
● O console pode ser improdutivo;
● Não fornece funcionalidades para codificação;
17 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Comandos
Básicos
18 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Ambiente R
■ IDE – RStudio;
● Disponível
gratuitamente;
● Função
autocomplete;
■ Quatro áreas básicas:
● Codificação (1);
● Console (2);
● Status(3);
● Output(4).
19 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
• Tipos de Dados
nome = "EU”
✔Numérico; nome
letra = 'A’
✔Character;
letra
✔Logic; x=1
✔Vetor. y=2
z = x>y
z
20 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Operações com Vetores
Função Descrição Examplos
c combina valores c(1,3,2,6)
(qualquer tipo) c("sim", “não")
rep repete valores rep(c(1,2), 3)
(qualquer tipo) x<-rep('a',5)
: sequências numéricas 1:5
1:-1
seq sequências numéricas x<-seq(-1,1,0.4)
x<-seq(1, by=2, length=10)
⮚ help("seq")
⮚ ? seq()
21 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Operações com Vetores
■ Exemplo vetores:
■ x = c(10.4, 5.6, 3.1, 6.4, 21.7)
■ fruta = c(”banana”,”laranja”,”uva”)
■ length(x),length(y)
■ mode(x), mode(y)
■ Listar objetos: ls()
■ Eliminar os objetos x e y: rm(x,y)
■ Eliminar todos os objetos: rm(list=ls())
22 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Operações com Vetores
■ Vetores numéricos e lógicos
■ Operações elemento a elemento, caso tenham a mesma
dimensão.
> peso = c(62, 70, 52, 98, 90, 70)
> altura = c(1.70, 1.82, 1.75, 1.94, 1.84, 1.61)
■ Calcular IMC para essas pessoas:
■ i.m.c = peso/altura^2
■ i.m.c
23 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
▪ Os principais tipos de objetos no R
são:
✔Vetores: sequência de valores
numéricos ou caracteres;
✔Matrizes: coleção de vetores em
linhas e colunas;
✔Listas: conjuntos de vetores,
matrizes e data frames;
✔Dataframe: mesmo que matriz mas
aceita vetores com tipos de dados
diferentes;
24 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
• Matrizes COLUMNbind e ROWbind
x = 1:12 cbind e rbind
xmat = matrix(x,ncol=3) x = matrix(10:1,ncol=2)
ymat = matrix(x,nrow =2) y = cbind(x,1:5)
dim(xmat) y = rbind(y,c(99,99,99))
summary(xmat) z = cbind(y,rep(88,6),y)
z = cbind(y,88,y)
25 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
• Matrizes
xc = round(runif(10), 2)
yc = round(runif(10), 2)
xy = cbind(xc, yc)
rownames(xy)
colnames(xy) = c(”A”,”B”)
rownames(xy)=1:10
xy[2,] e xy[,”B”]
26 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
• Array • Data Frames
a = array(1:12,dim=c(3,4))
vetor = c(1:12) View(iris)
length(vetor) dim(iris)
dim(a) mode(iris)
mode(a)
27 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
• Listas
É um objeto constituído por uma coleção ordenada de
objetos.
dados = list(pai="Jose", esposa="Maria",
n.filhos=3,idade.filhos=c(4, 7, 9))
dados
dados[[4]][2]
28 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
• Data Frames
tabela = data.frame (Nome =
c("Pedro","Paulo","Marcos"),Idade =c(20,30,40))
Acessar cada campo
tabela$Nome
tabela$Idade
29 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
# Criando vetores
pais = c("EUA", "Dinamarca", "Holanda", "Espanha", "Brasil")
nome = c("Mauricio", "Pedro", "Aline", "Beatriz", "Marta")
altura = c(1.78, 1.72, 1.63, 1.59, 1.63)
codigo = c(5001, 2183, 4702, 7965, 8890)
# Criando um dataframe de diversos vetores
pesquisa = data.frame(pais, nome, altura, codigo)
# Adicionando um novo vetor a um dataframe existente
olhos = c("verde", "azul", "azul", "castanho", "castanho")
pesq = cbind(pesquisa, olhos)
30 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
# Informacoes sobre o dataframe
dim(pesq)
# Obtendo um vetor de um dataframe
pesq$pais
pesq$nome
# Extraindo um único valor
pesq[1,1]
pesq[3,2]
# Numero de Linhas e Colunas
nrow(pesq)
ncol(pesq)
31 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Tipos de dados e objetos
• Exercício
# Filtro para um subset de dados que atendem a um criterio
pesq[altura < 1.60,]
pesq[altura < 1.60, c('codigo', 'olhos')]
# Dataframes Nomeados
names(pesq) <- c("País", "Nome", "Altura", "Codigo", "Olhos")
colnames(pesq) <- c("Var 1", "Var 2", "Var 3", "Var 4", "Var 5")
rownames(pesq) <- c("Obs 1", "Obs 2", "Obs 3", "Obs 4", "Obs
5")
32 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Estrutura de Controle
• Estão presentes em todas as
linguagens de programação;
33 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Estrutura de Controle
• Estrutura condicional - If e Else
34 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Estrutura de Controle
• Estrutura condicional aninhada
35 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Estrutura de Controle
• Estruturas de Loop
36 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Importação de dados
• Saber importar dados para a ferramenta de análise é um dos
passos mais importantes;
37 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
■ Dicas !!!
38 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Importação de dados
• Importando arquivos TXT
setwd("//Users//robertafagundes//Documents//")
setwd(”c:/Users/robertafagundes/Documents/")
setwd(”c:\\Users\\robertafagundes\\Documents\\")
# Importando arquivos
temp=read.table("temperaturas.txt")
dim(temp)
head(temp)
str(temp)
39 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Importação de dados
• Importando arquivos TXT
getwd()
setwd("//Users//robertafagundes//Documents//")
# Importando arquivos
temp=read.table("temperaturas.txt")
dim(temp)
head(temp)
str(temp)
40 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Importação de dados
■ Importação de Dados CSV
● getwd() – diretório corrente
● setwd() - configurar o diretório corrente
■ setwd
("//Users//robertafagundes//Documents//AulasUPE2019.1//PosG
raduacao//Estatistica Computacional//Scripts - aula 2 ")
● dados = read.csv2("dados.csv",header=TRUE)
41 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Gráficos
42 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Representação Gráfica
■ na sala dos professores da escola, há um
cartaz com a frase "Em 2007, eram 734
estudantes matriculados; em 2008, 753; em
2009, 777; em 2010, 794; e, em 2011, 819”.
43 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
44 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
45 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
46 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
#Exemplo 2
escolaridade<-table(dados$Escolaridade)
barplot(escolaridade)
47 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
attach(iris)
Values = table(Species)
labels =paste(names(Values))
pie(Values, labels = labels, main = "Especies Distribuidas")
48 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
49 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
50 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
• Quando a mediana
divide exatamente no
meio(simetria) a caixa.
boxplot(temp$V4,
main="Temperatura",xlab="DIA",ylab="TEMP")
51 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
52 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Estatística
Descritiva
53 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Sumarização Descritiva
■É importante sempre
aplicar medidas
descritivas antes de
qualquer análise:
■ Medidas de tendência
central;
■ Medidas de dispersão;
54 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Medidas de Dispersão
• Amplitude;
• Variância, Desvio Padrão;
• Coeficiente de Variação.
55 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Sumarização Descritiva
■ Funções
■ max(peso) = 98
■ min(peso)= 52
■ range(peso) = 52 98
■ mean(peso) = 73.66667 sum(peso)/length(peso)
73.66667
■ median(peso) = 70
■ var(peso) = 298.2667 sum((peso-mean(peso))^2)/(length(peso)-1)
298.2667
■ sd(peso) = 17.2704
56 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Sumarização Descritiva
■ Quantis
● q = c(48,49,51,50,49)
● quantile(q)
■ Percentis
● percentis = seq(.01,.99,.01)
● quantile(q, percentis)
■ Dercis
● d = c(48,49,51,50,49)
● quantile(d,seq(0.10,0.9,0.1))
57 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Linguagem R
Sumarização Descritiva
■ v
= c(10,11,9,10,10,9,11)
■CV = 100*(sd(v)/mean(v))
■
CV
■
[1] 8.164966 #em torno de 8%
■ sqrt(64) =8
■ abs(-2) = 2
■ z = c(5,2,6,9,10,13,15)
● summary(z)
58 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Exercício
■ Um artigo no Journal of Structural Engineering (Vol. 115, 1989)
descreve um experimento para testar a resistência resultante em
tubos circulares com calotas soldadas nas extremidades. Os
primeiros resultados são: 96; 96; 102; 102; 102;104; 104; 108;
126; 126; 128; 128; 140; 156; 160; 160; 164 e 170. Pede-se:
■ a) Calcule a média e mediana da amostra e dê uma interpretação.
■ b) Calcule os percentis 9%, 25%, 5% e 69%.
■ c) Calcule o segundo quartil ou mediana.
■ d) Calcule a amplitude da amostra.
■ e) Calcule a variância e o desvio padrão da amostra.
■ f) Qual a fonte de maior variabilidade deste experimento.
59 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Exercício_Resposta
vetor=c(96,96,102,102,102,104,104,108,126,126,128,128,140,156
,160,160,164,170)
med = mean(vetor)
medi = median(vetor)
ampl=range(vetor)
percentis = c(.09,.25,.05,.69)
perc = quantile(q, percentis)
print(med)
print(medi)
print(ampl)
print(perc)
sd(vetor)
var(vetor)
60 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Exercício_Resposta
■ A) Com este valor podemos concluir que a resistência da solda das
calotas circulares se concentra, na maioria dos testes, em torno do
valor médio. Isto é, se pegarmos aleatoriamente uma calota soldada
é de se esperar que a resistência da solda se concentre em torno (e
próximo) da média.
■ F) Como a estatística se preocupa com a variabilidade dos dados
amostrais, devemos apontar suas causas. Neste exemplo, podemos
apontar como possíveis causas de variabilidade os erros de
medição da resistência da solda, soldagem feita por soldadores
diferentes (caso não seja automatizado), etc. Enfim, devemos
reduzir a variabilidade para termos garantias de qualidade e, num
cenário ideal, eliminá-la.
61 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Exercícios
Considere os faturamentos mensais das seguintes
filiais de uma grande empresa (em milhares de
Reais)
Filial A: 20 22 25 30 24 22 40 32 24 21 24 190
Filial B: 35 39 37 38 42 40 45 41 33 37 40 47
62 AULA 2 - EC 24/07/23
UPE – UNIVERSIDADE DE PERNAMBUCO PROF. Dr. ROBERTA A. de A. FAGUNDES
Dúvidas
63 AULA 2 - EC 24/07/23