Introdução a Estatística

Conteúdo programático

  • Teoria:
    • O que é Estatística e em que áreas ela se subdivide;
    • O que é Ciência de dados e qual a importância da estatística;
    • Etapas da Análise Estatística;
    • Conceitos básicos;
    • Dados Tabelados;
    • O que são variáveis e quais são os seus tipos;
    • Medidas de tendência central (Média e suas propriedades, Mediana, Moda e Medidas Separatrizes (Quartis e Percentis);
    • Medidas de Assimetria e Curtose e seus respectivos coeficientes;
    • O que é Box-plot ou Diagrama de Caixas e como utilizá-lo para detecção de outliers;
    • Medidas de variação/Dispersão;
    • Algoritmos facilitadores do processo de aprendizagem da Mediana e da Variância;
    • Propriedades das medidas de tendência central e Dispersão;
  • Prática:
    • O que é R? Qual a sua história? Qual sua importância e o que é Rstudio e seus pacotes;
    • Mão na massa com o R Studio;
    • Como trabalhar com a Base do Enade – INEP (Exame nacional de desempenho de Estudantes;
    • Como importar a base de dados do Enade para o R;
    • Análise descritiva do banco e interpretação;
    • Como fazer filtros, agregações e transformar variáveis, usando a biblioteca DPLYR;
    • Como contabilizar informações faltantes no banco e como eliminá-las;
    • Elaborar análises gráficas usando ggplot2 com código e sem código;
    • Gráficos Estatísticos (Teoria e Prática);
    • Projeto Final (Valendo 10)

Aulas em Vídeo

  • Aulas em Vídeo no Estatidados

O que é Estatística e em que áreas ela se subdivide

  • O que é Estatística?

A estatística é um conjunto de técnicas que permite de forma sistemática organizar, descrever, analisar e interpretar dados advindos de diversas origens, a fim de extrair deles conclusões.

  • Pode ser subdivida em quatro grandes áreas:

Estatística Descritiva

  • É o ramo da estatística que se ocupa em organizar e descrever os dados, que podem ser expressos em tabelas e gráficos.

  • Pode ser dividida em dois Grupos:

Probabilidade

  • Nos permite descrever os fenômenos aleatórios, ou seja, aqueles em que está presente a incerteza.

Amostragem

  • Conjunto de técnicas para selecionar uma amostra da população, com o objetivo de obter informações de uma ou mais características de interesse, as quais permitam chegar a conclusões a respeito dos parâmetros.

  • População : É a coleção de todos os indivíduos que possuem determinadas características, as quais estamos interessados em estudar.

    • Representamos por: N = “Tamanho Populacional”.
  • Amostra: É um Subconjunto da população, uma parte dos indivíduos que possuem determinadas características.

    • Representamos por: n = “Tamanho Amostral”.

Importante: Sempre que falarmos em Amostra, usaremos letras Minúsculas e População, por sua vez, Maiúsculas.

Inferência Estatística

  • É o estudo de técnicas que possibilitam a extrapolação, a um grande conjunto de dados, das informações e conclusões obtidas a partir da amostra.

O que é Data Science?

Etapas da análise estatística

Conceitos Básicos da Estatística

  • Censo: Exame de todos os Elementos da população.

  • Dados Brutos: São dados na sua forma mais primitiva, desprovidos de ordenação, assim que coletados.

  • Rol Estatístico: São os dados brutos já ordenados, em ordem crescente ou decrescente.

Dados tabelados

  • Os dados podem ser expressos em tabelas de frequência, tanto em Frequências Absolutas Simples (𝑓𝑖) ou Frequências Absolutas Acumuladas (𝑓𝑎𝑐), podendo ser subdividas em Frequências Relativas Simples (𝑓𝑟) e Frequências Relativas Acumuladas (𝑓𝑟𝑎𝑐).

  • Frequência Absoluta Simples (𝑓𝑖): É a contagem simples de Elementos.

  • Frequências Absolutas Acumuladas (𝑓𝑎𝑐): É a contagem acumulada até a classe de interesse (Inclusive).

  • Frequência Relativa Simples (𝑓𝑟): É a contagem simples de Elementos, divididos pela soma das frequências simples, ou seja, representa a proporção ou o percentual de observações.

  • Frequência Relativa Acumuladas (𝑓𝑟𝑎𝑐) : É a contagem acumulada até a classe de interesse, divididos pela soma das frequências simples.

  • Distribuições de Frequência em Classes : Quando possuímos um grande conjunto de dados, se agruparmos em classes, teremos uma boa ideia do comportamento dos dados.

O que são variáveis e quais são os seus Tipos?

  • Qualquer característica associada a uma população.

  • Podem ser classificadas em:

  • Variáveis Quantitativas: Podem ser divididas em dois grupos, discretas e contínuas, o primeiro, quando for finita e enumerável(contagem) e o último quando os resultados possíveis, pertencerem a um intervalo de números reais e resultados de mensuração.

  • Exemplos:

    • Variáveis Quantitativas Discretas: Número de filhos, Número de carros e número de cigarros fumados por dia.
    • Variáveis Quantitativas Contínuas: Peso, altura e salário.
  • Variáveis Qualitativas: Representam atributos, qualidades, que podem ser divididas em dois grupos, ordinais e nominais, o primeiro, quando existir uma ordem implícita e o último, quando não existir uma ordem implícita.

  • Exemplos:

    • Variáveis Qualitativas Nominais: Sexo, cor dos olhos, fumante/não fumante e doente/sadio.

    • Variáveis Qualitativas Ordinais: Classe social, grau de instrução e estágio da doença.

  • Algoritmo do tipo de variáveis

Onde estudar Ciência de dados e Estatística?

Comunidade de Estatística do Prof. Thiago Marques

Site da Comunidade de Estatística do Prof. Thiago Marques

O que é R e qual a sua importância?

  • R é uma linguagem open Source e ambiente computacional utilizada no mundo todo e nas mais diversas áreas do conhecimento 🌐

  • Serve para manipulação de Dados, Ferramenta Estatística e Feramenta Gráfica de alto nível. 🥧

  • É uma das linguagens mais utilizadas pelos cientistas de dados, Analistas de dados e os Estatísticos.🧪

  • Compila e funciona em sistemas operacionais Linux, Windows e Mac.

Qual a sua história?

  • Inspirado na linguagem S, que foi desenvolvida na Bell Lab, criada por Ross Lhaka e por Robert Gentleman,no departamento de Estatística da universidade de Auckland, Nova Zelândia.

  • Surgiu em 1995, como software livre.

  • Versão 1.0.0 foi lançada no ano de 2000.

  • Hoje estamos na versão 4.1.2

O que é Rstudio e Pacotes do R?

  • O Rstudio é a IDE (Ambiente de desenvolvimento integrado) mais utilizada para a compilação da linguagem R, também compila outras linguagens como c++, Python e Java.

  • Na prática, o objetivo de uma IDE é facilitar e potencializar a programação naquela linguagem, por meio de um console, gerenciando gráficos e facilitando o Debug dos erros.

  • Pacotes do R, o R vem com um pacote chamado “base”, onde encontram-se as funções mais basilares da linguagem.

  • Também existem os pacotes criados pelos usuários, que são basicamente funções que os usuários usaram reiteradas vezes e acharam melhor empacotar a solução para usar frequentemente, podem conter também dataframes (Uma das estruturas de dados no R)

  • hoje são mais de 25.000 só no CRAN (Comprehensive R Archive Network), fora o Github.

  • 45 Anos de Existência

Aula prática 01 - Conceitos básicos e tipos de frequência

Video

Instalando e carregando Pacotes

#install.packages("remotes")  # Caso seja necessário
#install.páckages("devtools")
#remotes::install_github("juba/rmdformats",force=TRUE)
#remotes::install_github("glin/reactable",force=TRUE)

vetor_pacotes=c(
                "devtools",
                "rmdformats",
                "reactable",
                "Hmisc",
                "dplyr",
                "kableExtra",
                "emo",
                "vembedr"
                )
#install.packages(vetor_pacotes)

lapply(vetor_pacotes, 
       require, 
       character.only = TRUE)
## Carregando pacotes exigidos: devtools
## Carregando pacotes exigidos: usethis
## Carregando pacotes exigidos: rmdformats
## Carregando pacotes exigidos: reactable
## Carregando pacotes exigidos: Hmisc
## Carregando pacotes exigidos: lattice
## Carregando pacotes exigidos: survival
## Carregando pacotes exigidos: Formula
## Carregando pacotes exigidos: ggplot2
## 
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:base':
## 
##     format.pval, units
## Carregando pacotes exigidos: dplyr
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:Hmisc':
## 
##     src, summarize
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
## Carregando pacotes exigidos: kableExtra
## 
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
## Carregando pacotes exigidos: emo
## [[1]]
## [1] TRUE
## 
## [[2]]
## [1] TRUE
## 
## [[3]]
## [1] TRUE
## 
## [[4]]
## [1] TRUE
## 
## [[5]]
## [1] TRUE
## 
## [[6]]
## [1] TRUE
## 
## [[7]]
## [1] TRUE
## 
## [[8]]
## [1] TRUE

Primeira forma de criar o vetor

idade = c(10,
          10,
          10,
          10,
          30,
          30,
          30,
          30,
          30,
          30,
          30,
          30,
          50,
          50,
          50,
          50,
          70,
          70,
          70,
          90)

idade
##  [1] 10 10 10 10 30 30 30 30 30 30 30 30 50 50 50 50 70 70 70 90

Segunda forma de criar o vetor

idade2 = c(rep(10, 4), rep(30, 8), rep(50, 4), rep(70, 3), 90)

idade2
##  [1] 10 10 10 10 30 30 30 30 30 30 30 30 50 50 50 50 70 70 70 90

Achando as Frequências simples (fi)

frequencia_simples = table(idade)

Colocando no Visual excel

dados_simples = data.frame(frequencia_simples)

Ver o banco todo (Não recomendável para bancos gigantescos)

View(dados_simples)

Ver as n primeiras linhas do data.frame

head(dados_simples, 2)
##   idade Freq
## 1    10    4
## 2    30    8

Frequência acumulada

frequencia_acumulada = cumsum(frequencia_simples)

Adicionando coluna com acumulada

dados_simples$frequencia_acumulada = frequencia_acumulada

Frequência relativa simples

frequencia_relativa_simples = frequencia_simples / sum(frequencia_simples)

segunda forma para obter frequencias relativa simples utilizando a função prop.table()

prop.table(frequencia_simples)
## idade
##   10   30   50   70   90 
## 0.20 0.40 0.20 0.15 0.05

Adicionando a Frequência relativa simples

dados_simples$frequencia_relativa_simples = frequencia_relativa_simples

Frequência relativa acumulada

frequencia_relativa_acumulada = frequencia_acumulada / sum(frequencia_simples)

Frequência relativa acumulada(Segunda forma)

frequencia_relativa_acumulada = cumsum(frequencia_relativa_simples)

Criando a variavel frequencia_relativa_acumulada

dados_simples$frequencia_relativa_acumulada = frequencia_relativa_acumulada

Renomeando uma coluna do dataframe dados_simples

names(dados_simples)[5] = "frequencia_relativa_acumulada"
kable(dados_simples)
idade Freq frequencia_acumulada frequencia_relativa_simples frequencia_relativa_acumulada
10 4 4 0.20 0.20
30 8 12 0.40 0.60
50 4 16 0.20 0.80
70 3 19 0.15 0.95
90 1 20 0.05 1.00

Explicando as vantagens do pipe

base FOG

f(g(x))

funcao3(funcao2(funcao1(head(dados_simples))))

tidyverse GOF

g(f(x))

dados_simples %>% head() %>% funcao1() %>% funcao2() %>% funcao3()

Colocando na ótica tidyverse

dados_simples_tidy = dados_simples %>%
  mutate(
    frequencia_acumulada = cumsum(Freq),
    frequencia_relativa_simples = Freq / sum(Freq),
    frequencia_relativa_acumulada = cumsum(frequencia_relativa_simples)
  )

kable(dados_simples_tidy)
idade Freq frequencia_acumulada frequencia_relativa_simples frequencia_relativa_acumulada
10 4 4 0.20 0.20
30 8 12 0.40 0.60
50 4 16 0.20 0.80
70 3 19 0.15 0.95
90 1 20 0.05 1.00

Ordenando de forma decrescente pela idade utilizando a função arrange()

dados_simples_tidy_ordenado = dados_simples_tidy %>% arrange(desc(Freq))

Exportando como banco de dados csv

write.csv2(dados_simples_tidy, "coco1.csv", row.names = F)

Medidas de tendência central

  • Possibilitam saber o grau de concentração dos dados, uma forma de resumir os seus dados por meio de valores, representa tivos do conjunto de dados.

Tipos de Médias

Média Aritmética (𝑴𝑨)

  • É a soma de todos os elementos do conjunto, divididos pelo número de elementos que compõe o conjunto, essa nós estamos acostumados, sempre usamos para auferir nossos resultados no colégio.

  • Sua fórmula é dada por:

Média Geométrica (MG)

É a raíz n-ésima do produto de todos os elementos que compõe o conjunto.

  • Sua fórmula é dada por:

🎯: n é o número de elementos que compõe o conjunto.

Média Harmônica (MH)

É o número de elementos, divididos pela soma dos inversos dos elementos que compõe o conjunto.

  • Sua fórmula é dada por:

Relação entre as médias: MA≥𝐌𝐆≥𝐌𝐇.

  • 🎯 : Único caso em que a MA=MG=MH é o caso onde todos os elementos possuem o mesmo valor no conjunto de dados!

  • Exemplo didático para fixação do conteúdo:

Calcule a média aritmética, média geométrica e a média harmônica, para o seguinte conjunto de dados: {1,2,5,3,4)

Média Aritmética (𝑴𝑨)

Média Geométrica (MG)

Média Harmônica (MH)

Como já sabíamos: MA>MG>MH.

Mediana

  • É o valor da variável que divide os dados ordenados em duas partes de igual frequência.

Mediana em dados não divididos em intervalo de Classe:

  • Primeiro Passo: Colocar os dados em rol (Ordenar os dados de forma crescente ou decrescente)

  • Segundo Passo: Observar a paridade do n, pois o cálculo da mediana difere para n par e n ímpar.

  • Se n é ímpar.: Temos uma posição central únicapar., dada por P.C (Posição Central)= (n+1)/𝟐

    • Após calcularmos P.C , a Mediana será o valor que ocupa a posição central.
  • Se n é par: calcularemos duas posições centrais, quais sejam: P.C1 (Posição Central1)= n /𝟐 e P.C2(Posição Central2) = (n /𝟐) +1.

    • Após calcularmos P.C1 e P.C2 , a mediana será a média aritmética de P.C1 E PC.2.
  • O processo do cálculo da mediana, pode ser visto em forma de algoritmo no Diagrama a seguir:

  • Exemplo didático para fixação do conteúdo:

Calcule a mediana das observações: {1,2,1,1,4,5,3,6}**

Primeiro passo:

  • Ordenar os dados: {1,1,1,2,3,4,5,6}

Segundo passo:

  • Paridade do n: n = 8, portanto é par e teremos duas posições centrais

Terceiro passo:

  • Calcular P.C1 e P.C2 : P.C1= n /𝟐 = 8 /𝟐 = 4 e P.C2= (n /𝟐) + 1= 4+1 = 5.

  • Logo, a nossa processo do cálculo da mediana será a média aritmética da quarta observação e a quinta observação. Md= (2+3)/𝟐 = 2,5.

  • Exemplo didático para fixação do conteúdo:

Calcule a medianaediana das observações: {7,1,5,2,3,1,6}

Primeiro passo:

  • Ordenar os dados: {1,1,2,3,5,6,7}

Segundo passo:

  • Paridade do n: n = 7, portanto é ímpar e teremos uma única posição central

Terceiro passo:

  • Calcular P.C : P.C1= (n + 1) /𝟐 = 8 /𝟐 = 4

  • Logo, a nossa processo do cálculo da mediana será a quarta posição no nosso conjunto já ordenado e Md= 3.

Moda

  • É o valor que possui a maior frequência aboluta simples no conjunto de dados, consequentemente o de maior probabilidade de ocorrência em um conjunto de dados não agrupados em classes.

  • Exemplo didático para fixação do conteúdo:

Calcule a moda do conjunto {4,5,4,6,5,8,4}

Vamos realizar a tabela de frequências para facilitar a nossa visualização:

Percebemos pela tabela de frequências que a moda é 4, pois possui a maior frequência simples do conjunto, logo a oda é única e chamada de unimodal.

Calcule a moda do conjunto {4,5,4,6,5,8,4,4,5,5}

Percebemos pela tabela de frequências que a moda possui dois valores, pois duas observações do conjunto se repetem 4 vezes, portanto as maiores frequência simples do conjunto, logo a moda é 4 e 5 e é chamada de bimodal.

Calcule a moda do conjunto {1,2,3,4,5}:

Percebemos pela tabela de frequências que a moda não possui valor, pois todas as observações do conjunto se repetem nenhuma vez, portanto é chamada de amodal.

  • 🎯 : Um conjunto de dados que possui duas modas é chamado bimodal, mais de duas, multimodal e se não possuir Moda, é um conjunto amodal.

Medidas Separatrizes

  • Tem como objetivo dividir o conjunto de dados em n partes de igual frequência, os mais utilizados são os quartis e os percentis.

  • Quartis: Dividem o conjunto em quatro partes Iguais.

  • Percentis: Dividem o conjunto em 100 partes iguais.

    • Percentil Vinte e Cinco (P25=Q1).

    • Percentil Cinquenta (P50=Q2=Md).

    • Percentil Setenta e Cinco (P75=Q3).

Medidas de Assimetria

  • Possibilitam analisar uma distribuição em relação a sua moda, mediana e média.

Pense no conceito de simetria, fazendo a analogia a um espelho, se traçarmos um eixo vertical no meio da curva, e enxergarmos o mesmo de um lado, o que você vê do outro, significa que seus dados são simétricos.

Coeficiente de assimetria de Pearson

  • O desvio padrão é sempre positivo (>0).

  • Note que quando a média for igual a moda -> (AS=0), a distribuição será simétrica, terá ausência de assimetria.

  • Note que quando a média for menor que a moda -> (AS<0), a distribuição será assimétrica à esquerda ou negativa.

  • Note que quando a média for maior que a moda -> (AS>0), a distribuição será assimétrica à direita ou positiva.

Coeficiente de Curtose

- Q3 = Valor do terceiro quartil;
- Q1 = Valor do primeiro quartil;
- P90 = Valor do nonagésimo percentil;
- p10 = Valor do décimo percentil;
  • O coeficiente de curtose da distribuição normal é aproximadamente 3, e utilizamos como base de comparação:

  • Se k=3, então chamamos de Mesocúrtica (Grau de achatamento da curva normal).

  • Se k>3, então chamamos de Leptocúrtica (Mais alongada (Pontiaguda) ).

  • Se k<3, então chamamos de Platicúrtica (Mais achatada (platô).

  • 🎯 : No R (Library e1071)
    • K=0, Mesocúrtica.
    • K<0, Platicúrtica.
    • K>0, Leptocúrtica.

Aula prática 02 - Medidas de tendência central

Video

Evitando notação científica

options(scipen=999)

Instalando e carregando Biblioteca que calcula Moda, Assimetria e Curtose no R

#install.packages("e1071")
require(e1071)
## Carregando pacotes exigidos: e1071
## 
## Attaching package: 'e1071'
## The following object is masked from 'package:Hmisc':
## 
##     impute
#install.packages("DescTools")
library(DescTools)
## 
## Attaching package: 'DescTools'
## The following objects are masked from 'package:Hmisc':
## 
##     %nin%, Label, Mean, Quantile
library(Hmisc)

Amostra Empresa A

a = c(2000, 3000, 4000, 9000)
desvio1 = 2000 - 4500
desvio2 = 3000 - 4500
desvio3 = 4000 - 4500
desvio4 = 9000 - 4500
soma_desvios_media = sum(desvio1, desvio2, desvio3, desvio4)
soma_desvios_media
## [1] 0

Média, mediana, moda e Resumos empresa A

media_a = mean(a)

mediana_a = median(a)

moda_a = DescTools::Mode(a)
cbind(media_a,mediana_a,moda_a)
##      media_a mediana_a moda_a
## [1,]    4500      3500     NA

Resumos gerais empresa A

summary(a)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    2000    2750    3500    4500    5250    9000
Hmisc::describe(a)
## a 
##        n  missing distinct     Info     Mean      Gmd 
##        4        0        4        1     4500     3667 
##                               
## Value      2000 3000 4000 9000
## Frequency     1    1    1    1
## Proportion 0.25 0.25 0.25 0.25

Comparando Graficamente

#Divisão de janelas
par(mfrow = c(1, 2))

#Histograma com as frequências simples
hist(a)

#Histograma com as densidades
hist(a, probability = T)
#Curva de densidade
lines(density(a))

Assimetria e Curtose

#Coeficiente de assimetria de pearson
assimetria_a = skewness(a)

#Coeficiente de curtose de pearson
curtose_a=kurtosis(a)

cbind(assimetria_a,curtose_a)
##      assimetria_a curtose_a
## [1,]    0.5989042 -1.784706

Consolidando as Estatísticas resumo

dados_a_consolidados = data.frame(
  "moda" = moda_a,
  "mediana" = mediana_a,
  "media" = media_a,
  "assimetria" = assimetria_a,
  "curtose" = curtose_a
)

#Amostra Empresa B

b=c(2000,3000,3000,3000,3000,3000,4000,7000,9000)

Média, mediana, moda e Resumos empresa B

media_b = mean(b)

mediana_b = median(b)

moda_b = DescTools::Mode(b)
cbind(media_b,mediana_b,moda_b)
##       media_b mediana_b moda_b
## [1,] 4111.111      3000   3000

Resumos gerais empresa B

summary(b)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    2000    3000    3000    4111    4000    9000
Hmisc::describe(b)
## b 
##        n  missing distinct     Info     Mean      Gmd 
##        9        0        5    0.833     4111     2333 
## 
## lowest : 2000 3000 4000 7000 9000, highest: 2000 3000 4000 7000 9000
##                                         
## Value       2000  3000  4000  7000  9000
## Frequency      1     5     1     1     1
## Proportion 0.111 0.556 0.111 0.111 0.111

Comparando Graficamente

#Divisão de janelas
par(mfrow = c(1, 2))

#Histograma com as frequências simples
hist(b)

#Histograma com as densidades
hist(b, probability = T)


#Curva de densidade
lines(density(b))

Assimetria e Curtose

#Coeficiente de assimetria de pearson
assimetria_b = skewness(b)

#Coeficiente de curtose de pearson
curtose_b = kurtosis(b)
cbind(assimetria_b,curtose_b)
##      assimetria_b curtose_b
## [1,]     1.116122 -0.416036

Consolidando as Estatísticas resumo

dados_b_consolidados = data.frame(
  "moda" = moda_b,
  "mediana" = mediana_b,
  "media" = media_b,
  "assimetria" = assimetria_b,
  "curtose" = curtose_b
)

#Amostra Empresa C

c=c(2000,3000,4000,6000, 7000, 7000, 8000,  9000)

Média, mediana, moda e Resumos empresa C

media_c = mean(c)

mediana_c = median(c)

moda_c = DescTools::Mode(c)
cbind(media_c,mediana_c,moda_c)
##      media_c mediana_c moda_c
## [1,]    5750      6500   7000

Resumos gerais empresa C

summary(c)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    2000    3750    6500    5750    7250    9000
Hmisc::describe(c)
## c 
##        n  missing distinct     Info     Mean      Gmd 
##        8        0        7    0.988     5750     3000 
## 
## lowest : 2000 3000 4000 6000 7000, highest: 4000 6000 7000 8000 9000
##                                                     
## Value       2000  3000  4000  6000  7000  8000  9000
## Frequency      1     1     1     1     2     1     1
## Proportion 0.125 0.125 0.125 0.125 0.250 0.125 0.125

Comparando Graficamente

#Divisão de janelas
par(mfrow = c(1, 2))

#Histograma com as frequências simples
hist(c)

#Histograma com as densidades
hist(c, probability = T)


#Curva de densidade
lines(density(c))

Assimetria e Curtose

#Coeficiente de assimetria de pearson
assimetria_c = skewness(c)

#Coeficiente de curtose de pearson
curtose_c = kurtosis(c)
cbind(assimetria_c,curtose_c)
##      assimetria_c curtose_c
## [1,]   -0.2360201 -1.684509

Consolidando as Estatísticas resumo

dados_c_consolidados = data.frame(
  "moda" = moda_c,
  "mediana" = mediana_c,
  "media" = media_c,
  "assimetria" = assimetria_c,
  "curtose" = curtose_c
)

Medidas de tendência central, assimetria e curtose (Ótica tidyverse)

#ÓTICA TIDYVERSE
#install.packages("dplyr")
library(dplyr)

Dados empresa A (Ótica tidyverse)

#Empresa A
a.df = data.frame(a)

a.df_resumo = a.df %>% summarise(
  moda_a = Mode(a),
  mediana_a = median(a),
  media_a = mean(a),
  assimetria_a = skewness(a),
  curtose_a = kurtosis(a)
)

Dados empresa B (Ótica tidyverse)

b.df = data.frame(b)

#Empresa B
b.df_resumo = b.df %>% summarise(
  moda_b = Mode(b),
  mediana_b = median(b),
  media_b = mean(b),
  assimetria_b = skewness(b),
  curtose_b = kurtosis(b)
)

Dados empresa C (Ótica tidyverse)

c.df = data.frame(c)
c.df_resumo = c.df %>% summarise(
  moda_c = Mode(c),
  mediana_c = median(c),
  media_c = mean(c),
  assimetria_c = skewness(c),
  curtose_c = kurtosis(c)
)

Concatenando

#Transpor para concatenar colunas
consolidado_empresas=data.frame(t(a.df_resumo),t(b.df_resumo),t(c.df_resumo))

#Mudando nomes de linhas e colunas
colnames(consolidado_empresas)=c("resumo_empresa_a","resumo_empresa_b","resumo_empresa_c")
rownames(consolidado_empresas)=c("Moda","Mediana","Media","Assimetria","Curtose")

Exemplo JPMORGAN

mediana_jpmorgan_exemplo=c(16,18,19,20,21,23,28,30,32,33,33,47)

#Quantidade de elementos
length(mediana_jpmorgan_exemplo)
## [1] 12
#média
mean(mediana_jpmorgan_exemplo)
## [1] 26.66667
#mediana
median(mediana_jpmorgan_exemplo)
## [1] 25.5

Medidas de Dispersão

Diagrama de Box-Plot ou Diagrama de Caixas

É uma representação gráfica da distribuição dos dados, nos dá informação da assimetria da distribuição, presença de outliers (Valores Atípicos) e da Variabilidade dos dados, por meio da amplitude (Máx-Min).

Nos permitem saber o grau de dispersão dos dados, em relação a uma medida de tendência central, geralmente a média.

Exemplos: Amplitude, Variância, Desvio Padrão, Coeficiente de Variação.

  • População

    • Amplitude Populacional: É a diferença entre o maior e o menor valor da População:

- Variância Populacional:

- Desvio Padrão Populacional:

- Coeficiente de Variação Populacional:

  • Amostra

    • Amplitude Amostral – É a diferença entre o maior e o menor valor da amostra.

- Variância Amostral:

- Desvio Padrão Amostral:

- Coeficiente de Variação Amostral:

  • 🎯 : O cv é a única medida de variação adimensional (Não possui unidade de medida). Em geral, consideramos um coeficiente de variação < 25%, um bom indicador de homogeneidade dos dados!

O processo do cálculo da variância, pode ser visto em forma de algoritmo no Diagrama a seguir:

Exemplo didático para fixação do conteúdo:

Considere a amostra : {3,4,5,6,12}

Calcule: Amplitude, variância, desvio padrão e coeficiente de variação:

- Amplitude Amostral:

- Variância Amostral:

- Desvio Padrão Amostral :

- Coeficiente de Variação Amostral:

Aula prática 03 - Medidas de Dispersão

Video

Amostra0

#Selecionando a amostra das Sépalas
a0=iris$Sepal.Length
#Contando a quantidade de elementos
length(a0)
## [1] 150
#Ordenando os valores
sort(a0)
##   [1] 4.3 4.4 4.4 4.4 4.5 4.6 4.6 4.6 4.6 4.7 4.7 4.8 4.8 4.8 4.8 4.8 4.9 4.9
##  [19] 4.9 4.9 4.9 4.9 5.0 5.0 5.0 5.0 5.0 5.0 5.0 5.0 5.0 5.0 5.1 5.1 5.1 5.1
##  [37] 5.1 5.1 5.1 5.1 5.1 5.2 5.2 5.2 5.2 5.3 5.4 5.4 5.4 5.4 5.4 5.4 5.5 5.5
##  [55] 5.5 5.5 5.5 5.5 5.5 5.6 5.6 5.6 5.6 5.6 5.6 5.7 5.7 5.7 5.7 5.7 5.7 5.7
##  [73] 5.7 5.8 5.8 5.8 5.8 5.8 5.8 5.8 5.9 5.9 5.9 6.0 6.0 6.0 6.0 6.0 6.0 6.1
##  [91] 6.1 6.1 6.1 6.1 6.1 6.2 6.2 6.2 6.2 6.3 6.3 6.3 6.3 6.3 6.3 6.3 6.3 6.3
## [109] 6.4 6.4 6.4 6.4 6.4 6.4 6.4 6.5 6.5 6.5 6.5 6.5 6.6 6.6 6.7 6.7 6.7 6.7
## [127] 6.7 6.7 6.7 6.7 6.8 6.8 6.8 6.9 6.9 6.9 6.9 7.0 7.1 7.2 7.2 7.2 7.3 7.4
## [145] 7.6 7.7 7.7 7.7 7.7 7.9

Amplitude amostral

h0= diff(range(a0))

Variância amostral

var0=var(a0)

Desvio padrão amostral

sd0=sd(a0)
sqrt(var0)
## [1] 0.8280661

Média -2 desvios e +2 desvios

mean(a0)-2*sd0
## [1] 4.187201
mean(a0)+2*sd0
## [1] 7.499466

Coeficiente de variação amostral

cv0=sd0/mean(a0)*100

Amostra1

a1=iris$Petal.Length
sort(a1)
##   [1] 1.0 1.1 1.2 1.2 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.4 1.4 1.4 1.4 1.4 1.4 1.4
##  [19] 1.4 1.4 1.4 1.4 1.4 1.4 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
##  [37] 1.5 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.7 1.7 1.7 1.7 1.9 1.9 3.0 3.3 3.3 3.5
##  [55] 3.5 3.6 3.7 3.8 3.9 3.9 3.9 4.0 4.0 4.0 4.0 4.0 4.1 4.1 4.1 4.2 4.2 4.2
##  [73] 4.2 4.3 4.3 4.4 4.4 4.4 4.4 4.5 4.5 4.5 4.5 4.5 4.5 4.5 4.5 4.6 4.6 4.6
##  [91] 4.7 4.7 4.7 4.7 4.7 4.8 4.8 4.8 4.8 4.9 4.9 4.9 4.9 4.9 5.0 5.0 5.0 5.0
## [109] 5.1 5.1 5.1 5.1 5.1 5.1 5.1 5.1 5.2 5.2 5.3 5.3 5.4 5.4 5.5 5.5 5.5 5.6
## [127] 5.6 5.6 5.6 5.6 5.6 5.7 5.7 5.7 5.8 5.8 5.8 5.9 5.9 6.0 6.0 6.1 6.1 6.1
## [145] 6.3 6.4 6.6 6.7 6.7 6.9

Amplitude amostral

h1= diff(range(a1))

Amplitude amostral(Ótica tidyverse)

library(dplyr)
a1 %>% range() %>% diff() 
## [1] 5.9

Variância amostral

var1=var(a1)

Desvio padrão amostral

sd1=sd(a1)

Média -2 desvios e +2desvios

mean(a1)-2*sd1
## [1] 0.2274035
mean(a1)+2*sd1
## [1] 7.288596

Coeficiente de variação amostral

cv1=sd(a1)/mean(a1)*100

Consolidando e comparando

dados_a0_consolidados=data.frame("amplitude"=h0,"variancia"=var0,"desvio_padrao"=sd0,"media"=mean(a0),"coeficente_variacao"=cv0)

dados_a1_consolidados=data.frame("amplitude"=h1,"variancia"=var1,"desvio_padrao"=sd1,"media"=mean(a1),"coeficente_variacao"=cv1)

consolidado_comparativo=data.frame(t(dados_a0_consolidados),t(dados_a1_consolidados))

colnames(consolidado_comparativo)=c("resumo_tamanhho_Sepala","resumo_tamanhho_Petala")

consolidado_comparativo
##                     resumo_tamanhho_Sepala resumo_tamanhho_Petala
## amplitude                        3.6000000               5.900000
## variancia                        0.6856935               3.116278
## desvio_padrao                    0.8280661               1.765298
## media                            5.8433333               3.758000
## coeficente_variacao             14.1711260              46.974407

Comparando graficamente

par(mfrow=c(1,2))

# Comparação
plot(a0,ylim =c(1,7),col=iris$Species)
abline(h=mean(a0))
abline(h=mean(a0)-2*sd0)
abline(h=mean(a0)+2*sd0)

plot(a1,col=iris$Species)
abline(h=mean(a1))
abline(h=mean(a1)-1.5*sd1)
abline(h=mean(a1)+1.5*sd1)

Ótica Tidyverse

Dados sepalas consolidado

library(dplyr)
dados_sepala = iris %>% summarise( media0=mean(Sepal.Length),
                                   h0= diff(range(Sepal.Length)),
                                   var0=var(Sepal.Length),
                                   sd0=sd(Sepal.Length),
                                   cv0=sd0/media0*100
                                   )
dados_sepala
##     media0  h0      var0       sd0      cv0
## 1 5.843333 3.6 0.6856935 0.8280661 14.17113

Dados petalas consolidado

dados_petala = iris %>% summarise( media1=mean(Petal.Length),
                                   h1= diff(range(Sepal.Length)),
                                   var1=var(Petal.Length),
                                   sd1=sd(Petal.Length),
                                   cv1=sd1/media1*100
)
dados_petala
##   media1  h1     var1      sd1      cv1
## 1  3.758 3.6 3.116278 1.765298 46.97441

Exemplo desafio: Em qual carteira devo investir? Carteira de ações A ou B? Use tudo que foi aprendido até o momento.

#Retorno ações
a=c(50,60,70)
b=c(-20,140)

mean(a)
## [1] 60
mean(b)
## [1] 60
median(a)
## [1] 60
median(b)
## [1] 60
sd(a)
## [1] 10
sd(b)
## [1] 113.1371
sd(a)/mean(a)*100
## [1] 16.66667
sd(b)/mean(b)*100
## [1] 188.5618

Projetos:

  • Mba ciência de dados MBA DS CECID / Comunidade de Estatística
  • Análise Exploratória de Acidentes Rodoviários - BASE PRF 2020 / Comunidade de Estatística

Precificação de Imóveis - Melbourne Austrália

Dashboards:

  • ANÁLISE DO PERFIL LINKEDIN DO PROF. THIAGO MARQUES (USP/IBGE): 2013-2021
  • ANÁLISE DO DADOS DO NEFLIX - PROF. THIAGO MARQUES (USP/IBGE): 2012-2021
  • ANÁLISE DO DADOS DO APP IFOOD - PROF. THIAGO MARQUES (USP/IBGE): 2018-2020
  • Análise Exploratória de Acidentes Rodoviários - BASE PRF 2020
  • Dashboard Modelos preditivos - Pokémon

Pokémon

Aulas de Estatística, Marketing Analytics e Grafos aplicadas com o Prof. Thiago Marques e Prof Marcos Severo, Palestras, Palestras e Entrevistas

Ecossistemas de aprendizagem em Estatística