R - Estatística Básica

  • Estatística Básica
  • Gráficos

Medidas Estatísticas Básicas

Funções Básicas

  • min() , max()
  • sum()
  • mean(), median()
  • quantile()
  • var(), sd()
  • summary()
  • table()

mean

> x=1:11
> x
##  [1]  1  2  3  4  5
##  [6]  6  7  8  9 10
## [11] 11
> mean(x)
## [1] 6

median

> 
> x
##  [1]  1  2  3  4  5
##  [6]  6  7  8  9 10
## [11] 11
> median(x)
## [1] 6

quaintile

> x
##  [1]  1  2  3  4  5
##  [6]  6  7  8  9 10
## [11] 11
> quantile(x,c(0.2,0.5))
## 20% 50% 
##   3   6

summary

> x
##  [1]  1  2  3  4  5
##  [6]  6  7  8  9 10
## [11] 11
> summary(x)
##    Min. 1st Qu. 
##     1.0     3.5 
##  Median    Mean 
##     6.0     6.0 
## 3rd Qu.    Max. 
##     8.5    11.0

Dados com NA

> x1=c(x,NA)
> mean(x1)
## [1] NA
> mean(x1, na.rm=T)
## [1] 6

tabela de frequencia

> x=sample(letters[1:5],60,replace=T) #?sample
> x
##  [1] "d" "c" "c" "c"
##  [5] "c" "c" "a" "a"
##  [9] "e" "d" "e" "a"
## [13] "c" "a" "d" "d"
## [17] "a" "e" "d" "b"
## [21] "b" "d" "e" "c"
## [25] "e" "c" "a" "a"
## [29] "c" "d" "e" "b"
## [33] "a" "d" "b" "b"
## [37] "b" "a" "d" "a"
## [41] "d" "b" "b" "a"
## [45] "e" "b" "a" "b"
## [49] "c" "b" "d" "e"
## [53] "b" "a" "a" "d"
## [57] "c" "c" "a" "a"
> table(x)
## x
##  a  b  c  d  e 
## 16 12 12 12  8

Exercícios

  1. Carregue a base de dados votos.txt ([https://tinyurl.com/votos-txt])
  2. Qual a dimensão do objeto? (linhas e colunas)
  3. Quais são as variáveis?
  4. Corrija os nomes das colunas como segue: uf, candidatos, partido, log_votos, sexo, resultado
  5. Qual a frequencia de partidos e de sexo dos candidatos?
  6. Qual o partido com a representatividade por sexo mais equilibrada?
  7. Qual a media de votos dos eleitos?

Gráficos

Gráficos

  • Os gráficos são apresentados em janelas gráficas.
  • Normalmente há uma única janela gráfica e esta sempre apresentará o último gráfico solicitado.
  • No R Studio, estas janelas ficam acumuladas na aba Plots

A função plot()

  • Função gráfica genérica do R.

plot(x, y, type=“p”, …)

Multiplos gráficos na Janela ativa

par(mfrow=c(l ,c ))

Criando dados simulados

>  set.seed(333)
>  x = runif(100)
>  y = 4*x+rnorm(100)
>  grp = factor(rep(1:5,20))
>  grpl = factor(rep(LETTERS[1:5],c(15,35,22,40,8)))
>  gg=factor(rep(c("G_A","G_B","G_C"),c(40,45,35)))
> gg=sample(gg)

plot - Argumentos (principais)

Os principais argumentos da função plot()

  • type: tipo de gráfico (linhas, pontos, …)
  • main: título
  • xlab e ylab: título dos eixos
  • col: cor (veja colors())

Gráfico de pontos

> plot(x,y,type="p",main="Título do Gráfico",
+ xlab="x",ylab="y",col="blue")

Gráfico de pontos

> plot(x,y,type="p",main="Título do Gráfico",
+ xlab="x",ylab="y",col="blue", pch="*",cex=3)

Gráfico de linhas

> plot(y,type="l",main="Título do Gráfico",
+ xlab="x",ylab="y",col="red")

Gráfico de linhas- opções

> plot(y,type="l",main="Título do Gráfico",
+ xlab="x",ylab="y",col="red",lty=3, lwd=3)

barplot

>  barplot(table(grpl),angle = 15+10*1:5, density = 20,
+          main="barplot",col="red")

barplot -vertical

>  barplot(table(grpl),col="black",  main="barplot")

barplot - horizontal

>  barplot(table(grpl),col="black",horiz=TRUE, 
+          main="barplot Horizontal")

barplot -variáveis agrupadas

>  barplot(table(gg,grpl),beside=TRUE,col=heat.colors(3),
+ border="white",legend=unique(gg),  main="barplot")

histograma

> hist(y,density=10,main="hist", col="blue")

boxplot

>  boxplot(split(y,grp),names=paste("Grp ",1:5,sep=""),
+          main="boxplot")

points- adiciona pontos

>  plot(x,y,type="p",main="points")
>  points(c(0.2,0.4,0.6),c(1,3,5),pch=9,cex=4, col="red")

abline - adiciona uma reta

>  plot(x,y,main="abline")
>  abline(lsfit(x,y))
>  abline(a=0,b=4.5,col="red")

lines - adiciona linhas

> plot(y,type="l",main="lines")
>  lines(c(y[-1]+1,0), col="red")

text - adiciona texto

> plot(x,y,type="n",main="text")
> text(x,y,cex=2)
> text(0.02,5.5,"detalhes: ?text", pos=4, cex=3,col="red")

title - gerenciando títulos

> plot(x,y,xlab=NA, ylab=NA)
> title("Título", cex.main = 2,   font.main= 4, 
+       col.main= "blue",xlab = "Eixo x",ylab = "Eixo y",
+       cex.lab = 0.75, font.lab = 3, col.lab = "red")

Parâmetros Gráficos

  • para detalhes veja ?par
  • font: 1(plain text), 2(bold face), 3 (italic) e 4 (bold italic)
  • lty: 0=blank, 1=solid (default), 2=dashed, 3=dotted, 4=dotdash, 5=longdash, 6=twodash
  • pch: veja ?points

Funções Gráficas de Baixo Nível

  • Points - Adiciona pontos
  • text - Adiciona texto
  • lines - Adiciona linhas conectando pontos
  • abline - Adiciona linha reta

##Funções Gráficas de Baixo Nível - Title - Adiciona título - legend - Adiciona legenda
- identify - identifica pontos interativamente

Multiplos gráficos na Janela ativa

par(mfrow=c(l ,c ))

Funções de Gráficos

  • barplot() Gráfico de barras simples
  • boxplot() - box plot simples
  • hist() - histograma
  • dotchart() - Gráfico de pontos
  • piechart() - Gráfico de pizza
  • qqnorm() - Gráfico quantile-quantile para uma amostra contra a normal padrão
  • qqplot quantile-quantile plot para duas amostras

Gráficos melhores

Exercícios

  1. Suponha a variável v2=rnorm(150,1,2). Represente-a em um gráfico de linhas. ([Solução_7.01])
  2. No gráfico do item 1, inclua outra série, v3=rnorm(150,1,4), em verde escuro. As duas series ficaram bem representadas? ([Solução_7.02])
  3. Sejam os dados referenes a tres marcas de carros.Faça um gráfico de pontos identificando cada marca. ([Solução_7.03])
Marca Vel Dist
A 4 2
B 10 18
C 15 20

  1. Inclua mais um resultado no gráfico do item 03. Marca D, Velocidade 35 e Distância 25. Use a cor amarela. ([Solução_7.04])

  2. Faça um gráfico de pontos relacionando x e y identificando por cores os grupos grp. (dados simulados - slide Criando dados Simulados) ([Solução_7.05])