Handout #04

Estatística Descritiva e Inferencial Básica

Prof. Anderson Ara (DESt-UFPR)

15 jul 2022

Estatística Descritiva

Neste capítulo continuamos os primeiros passos em Estatística Descritiva para análise de uma única variável, apresentando as medidas de dispersão e tabelas de frequência para variáveis quantitativas.

Medidas de dispersão

Para quantificar a variabilidade de variáveis quantitativas, definimos as medidas de dispersão: variância, desvio-padrão e amplitude.

Variância: A variância é uma medida que indica, em geral, o afastamento dos dados de seu valor esperado. Ou seja, o quanto que os dados se distanciam de sua média. Para isso, a variância considera a distância euclidiana (distância quadrática) entre os dados e sua média. Quanto maior a variância, mais distantes os dados estão de seu valor esperado, ou seja, mais dispersos.

A variância de uma população de tamanho \(N\) é um parâmetro denotado por \(\sigma^2\) e definida por

\[\sigma^2 = \frac{(X_1 - \theta)^2 + \cdots + (X_N - \theta)^2}{N} =\frac{\sum_{i=1}^{N}(X_i - \theta)^2}{N}\]

para \(\theta\) definido como o parâmetro de média populacional.

Quando o conjunto de dados é uma parte da população, ou seja, uma amostra, aplicamos uma correção no cálculo da variância. Assim, se estamos analisando uma amostra, a variância para uma amostra de tamanho \(n\) é definida por,

\[S^2 = \frac{(X_1 - \bar{X})^2 + \cdots + (X_n - \bar{X})^2}{n-1} =\frac{\sum_{i=1}^{n}(X_i - \bar{X})^2}{n-1}\] para \(\bar{X}\) definido como média amostral.

Uma fórmula alternativa para o cálculo da variância amostral é:

\[\begin{aligned} S^2 &= \frac{\sum_{i=1}^{n}(X_i^2 - 2X_i\bar{X}- \bar{X}^2)}{n-1} \\ &= \frac{\sum_{i=1}^{n} (X_i^2 - 2\bar{X} \sum_{i=1}^{n} X_i- \sum_{i=1}^{n} \bar{X}^2)}{n-1} \\ &= \frac{\sum_{i=1}^{n} X_i^2 - 2n\bar{X}^2 -n \bar{X}^2}{n-1} \\ &= \frac{\sum_{i=1}^{n} X_i^2 - n\bar{X}^2}{n-1} \end{aligned}\]

O procedimento acima pode ser aplicado da mesma forma para a variância populacional.

Desvio Padrão: Como visto anteriormente, a variância é a média das distâncias dos dados com relação ao seu valor esperado, porém tais distâncias são medidas de forma quadrática. Ou seja, se estamos calculando a variância de uma variável mensurada em segundos, a variância nos fornecerá um resultado de segundos ao quadrado. Para eliminar esse efeito e termos uma medida de dispersão na mesma escala de mensuração, utilizamos o desvio padrão, que é definido como a raiz quadrada da variância.

O desvio padrão para uma população de tamanho \(N\), é denotado por \(\sigma\) e definido por

\[\sigma = \sqrt{\sigma^2}\]

O desvio padrão para uma amostra de tamanho \(n\), é denotado por \(S\) e definido por

\[S = \sqrt{S^2}\]

É importante destacar que, assim como a média, estas duas medidas podem ser influenciadas por valores aberrantes.

Intervalo interquartílico: Também é importante observar a distância entre os quartis pode indicar a variabilidade dos dados. Esta medida, também chamada de desvio interquartílico ou amplitude interquartílica, é denotada por \(IIQ\) e contém 50% das observações centrais. Ou seja, as observações maiores do que \(Q1\) e menor do que \(Q3\). A distância interquartílica é definida por,

\[IIQ = Q3 - Q1\]

Note que, da mesma forma que a mediana, os valores aberrantes tendem a influenciar menos esta medida, chamamos estas medidas de estatísticas robustas.

O \(IIQ\) é utilizado para definir os limites para as observações discrepantes em um gráfico boxplot, sendo

\[\text{Limite superior}=Q3+1,5\times IIQ\] \[\text{Limite inferior}=Q1-1,5\times IIQ\]


Exemplo: No exemplo referente a amostra aleatória de conexões de um servidor (de tamanho \(n = 15\)), para a variável tempo de conexão empregamos o cálculo das medidas variância amostral, desvio padrão amostral e desvio interquartílico.

\[\begin{aligned} S^2 &= \frac{(1,16-4,1902)^2 + \cdots + (3,23-4,1902)^2}{14} \\ &= \frac{797,713}{59} = 56,97. \\ S &= \sqrt{S^2} = \sqrt{56,97} = 7,548 \end{aligned}\]

e

\[IIQ = Q3-Q1=9,63 - 1, 29 = 8,34\]

\[\text{Limite superior}=9,63+1,5\times 8,34=22,14\]

\[\text{Limite inferior}=1,29-1,5\times 8,34=-11,22\]

Note que, neste caso, o limite inferior é substituído pelo valor mínimo, pois é inferior ao mínimo. Ou seja, valores fora do intervalo (0.1;22,14) são considerados como possíveis valores discrepantes.

Boxplot da variável tempo de conexão

Boxplot da variável tempo de conexão

Outras duas medidas resumo importantes para mensurar a variabilidade dos dados são a amplitude e o coeficiente de variação.

Amplitude: Denotada por \(A\), a amplitude de um conjunto de observações é definida como sendo a diferença entre a maior e a menor observação, ou seja,

\[A = X_{(n)} - X_{(1)}\]

Coeficiente de Variação: O coeficiente de variação, \(cv(x)\), é definido por,

\[cv(x) = \frac{S}{\bar{X}}\]

o coeficiente de variação (\(cv\)) quantifica a variabilidade dos dados, sem levar em conta a ordem de grandeza da variável. É interpretado como a variabilidade dos dados em relação à média: quanto menor o valor do \(cv\) mais homogêneo é o conjunto de dados. É uma medida adimensional e, geralmente expresso em porcentagem. Por ser adimensional, é uma medida utilizada para comparar valores com diferentes unidades de medidas. Além disso, podemos classificar


Exemplo: Para a variável tempo, a amplitude é \(x_{(15)} - x_{(1)} = 24,91 - 0,1 = 24,81\) e \(cv(x) = \frac{S}{\bar{X}} = 1,234\), ou seja o tempo de conexão tem coeficiente de variação de aproximadamente 123,4%, o que significa que os tempos de conexão são muito dispersos com relação a média.


É importante notar que as medidas de dispersão são medidas positivas. Caso qualquer uma delas sejam zero, irá implicar a ausência de dispersão nos dados. Ou seja, a ausência completa de variabilidade.


Exemplo: Considerando as variáveis tempo de conexão e taxa de erros de sincronia, as medidas descritivas são apresentadas na Tabela abaixo.

Medidas Tempo Taxa de erro
média 6,1187 0,0533
variância 56,9795 0,0004
desvio padrão 7,5485 0,0188
Q1 1,2900 0,0450
Q2 2,6100 0,0500
Q3 9,6300 0,0650
cv 1,2337 0,3520

Podemos dizer que, para as variáveis,


Tabela de Frequências para dados quantitativos

Na prática, muitas vezes, quando trabalhamos com dados quantitativos, temos um número grande de observações diferentes sob estudo. Assim, de forma semelhante para as variáveis qualitativas, podemos resumir uma variável quantitativa a fim de facilitar sua observação e organização, agrupando-a em classes de intervalos.

Para construir a tabela usando a regra, precisamos responder três perguntas:

  1. qual o número de intervalos?

  2. qual a amplitude dos intervalos?

  3. quais os limites inferior e superior para tais intervalos?

Na literatura existem diversas metodologias para a construção de tabelas de frequências para variáveis quantitativas. Apresentamos aqui uma das mais utilizadas, a regra de Sturges, assim segundo Sturges (1926Sturges, H. A. 1926. «The choice of a class interval». Journal of the American Statistical Association 21 (153): 65–66.),

  1. o número de intervalos, \(k\), é dado por: \(k \cong 1+ 3,22\log(n)\);

  2. amplitude de cada intervalo, \(h\), é dada por: \(h = \frac{A}{k}\), para \(A\) a Amplitude definida acima;

  3. o limite inferior da 1\(^a\) classe, \(l_1\) é dado por: \(l_1\) = menor valor do conjunto de dados e o limite superior é \(L_1 = l_1 + h\). Definido o tipo de intervalo (fechado/aberto para os limites), construímos o segundo intervalo: \(l_2 = L_1\) e \(L_2 = l_2 + h\). Assim sucessivamente até o \(k^o\) intervalo.

Após a definição dos intervalos, basta observar na amostra as frequências absolutas e calcular as frequências relativas para cada um dos intervalos.


Exemplo: Considere a variável quantitativa tempo de conexão, seguindo os itens a) a c) da regra encontramos:

  1. o número de intervalos, \(k\), dado por: \(k \cong 1 + 3,22\log(15)\) = 4,79. Aproximando para o inteiro mais próximo, temos \(k = 5\);

  2. a amplitude de cada intervalo, \(h\), dada por: \(h = \frac{A}{k}= \frac{24,91 - 0,1}{5} = 4,962\) ;

  3. os limites inferior e superior para cada intervalo, dados por \(l_1 = 0,1\), \(L_1 = l_1 + h = 0,1+4,962=5,062\), e assim sucessivamente até o \(5^o\) intervalo.


As classes podem ser organizadas em uma tabela de frequências.


Exemplo: A Tabela abaixo exibe as frequências absolutas, relativas e acumuladas, para a variável taxa de erro de sincronia para os dados agrupados em intervalos.

classes \(f_a\) \(f_r\) \(F_a\)
0,01 \(\vdash\) 5,06 10 0,6666 0,6666
5,06 \(\vdash\) 10,02 1 0,0667 0,7333
10,02 \(\vdash\) 14,99 2 0,1333 0,8666
14,99 \(\vdash\) 19,95 1 0,0667 0,9333
\(\ge\) 19,95 1 0,0667 1,0000

Observe que quarta coluna indica a frequência acumulada (soma das frequências relativas até a classe \(i\)). Devemos destacar que a regra de Sturges indicou 5 intervalos. A aproximação (para \(k=5\)) pode causar uma pequena diferença no número de intervalos resultantes, para conter todos os valores. Note também que na tabela a notação adotada para a construção do intervalo, sendo que para cada intervalo adotamos intervalo fechado no limite inferior e aberto no limite superior (denotado por \(\vdash\)).


Histograma

Através da organização em classes de intervalos de uma variável quantitativa, podemos construir um gráfico denominado histograma. A Figura 2 exibe no Gráfico Histograma para a variável tempo.

Histograma para a variável taxa de erro de sincronia

Histograma para a variável taxa de erro de sincronia

É importante destacar que:

  1. as barras do histograma devem abranger todo o intervalo de valores da variável;

  2. o histograma é um gráfico de barras contíguas, as barras são criadas em intervalos na reta dos reais.

  3. um grande número de intervalos implicará em um histograma muito achatado, com baixas frequências; um pequeno número de intervalos implicará em com barras muito altas, alta frequência. Devemos sempre utilizar o bom-senso;

  4. é possível observar a existência (ou não) de valores discrepantes (observações individuais que estão fora do padrão global do gráfico) e procurar por possíveis explicações;

  5. assim como no gráfico dotplot é possível observar um padrão global de comportamento dos dados: observar o centro e a dispersão dos dados, a observação que aparece com maior frequência e a simetria (isto é, com relação ao centro, as caudas esquerda e direita são aproximadamente um espelho uma da outra);

  6. se existir uma classe com frequência zero, reagrupamos esta classe. Teremos assim, classes com tamanho diferentes, e altura do histograma passa a ser calculada usando \(f_{a_i}/h_i, \; i = 1, \cdots, k\).

  7. Se a frequência absoluta do intervalo \(i\) é denotada por \(f_{a_i}\), então sua frequência relativa é \(f_{r_i}=f_{a_i}/n\). Sua densidade é \(d_i=f_{r_i}/h_i\), onde \(h_i\) é sua largura. Um histograma de densidade, ao contrário de um histograma de frequência, possui a característica que a soma das áreas de suas barras é igual a 1.

Medidas resumo em dados agrupados

Uma vez que os dados quantitativos foram agrupados (tabelados), calculamos as medidas resumo de forma diferente.

Para uma tabela de frequência com \(k\) intervalos, denotamos \(m_i\) como o ponto médio do intervalo \(i\) e \(p_i\) a frequência relativa em cada intervalo \(i\), com \(i=1, \cdots, k\).

Assim, o cálculo para cada uma das medidas resumo pode ser realizado da seguinte forma,

\[S^2 = \sum_{i=1}^{k}(m_i - \bar{X})^2 p_i\]

\[P_q = l_q + \left(\frac{q \times n - F_a} {f_q}\right) h_q\] sendo \(q = 0,01; \cdots; 0,99\) o quantil de interesse, \(l_q\) o limite inferior da classe que contém o quantil \(q\) de interesse ; \(f_q\) a frequência da classe que contém o quantil, \(F_a\) a frequência acumulada até a classe anterior à classe que contém o quantil e \(h_p\) a amplitude da classe que contém o quantil de interesse.

Morettin e Bussab (2017Morettin, P. A., e W. O. Bussab. 2017. Estatística Básica. Editora Saraiva.) mostram uma alternativa para encontrar os quantis via equivalência de retângulos.

Gráfico da distribuição acumulada empírica

O gráfico da função de distribuição empírica, também conhecido como gráfico da função de distribuição acumulada empírica, está baseado na função de distribuição acumulada dos dados, a qual é uma função de grau que aumenta \(1/n\) para cada uma das \(n\) observações.

A função de distribuição acumulada empírica é definida como

\[\widehat{F}_n(x)=\frac{{\mbox{número de elementos na amostra}}\leq x}{n}\] para \(\forall~x \in \mathbb{R}\).

A Figura 3 exibe o gráfico da função de distribuição empírica para a variável tempo de conexão.

Distribuição acumulada empírica para a variável taxa de erro de sincronia

Distribuição acumulada empírica para a variável taxa de erro de sincronia

Medidas de dispersão e histograma em R

## IMPORTANDO ARQUIVO EXTERNO .CSV
URL <- "https://raw.githubusercontent.com/"
pathGithub <- "andersonara/datasets/master/"
arquivo   <- "amostra_servidor.csv"

dados <- read.csv(paste0(URL,pathGithub,arquivo),header=T,dec=',',sep=';')


#AMPLITUDADE
range(dados$bytes.env)
## [1] 1690 8301
range(dados$bytes.env)[2]-range(dados$bytes.env)[1]
## [1] 6611
#INTERVALO INTERQUALÍTICO
IQR(dados$bytes.env)
## [1] 892
#VARIÂNCIA AMOSTRAL
var(dados$bytes.env)
## [1] 4893541
#DESVIO PADRÃO AMOSTRAL
sd(dados$bytes.env)
## [1] 2212.135
#HISTOGRAMA DE FRÊQUENCIA
hist(dados$bytes.env)

#HISTOGRAMA DE DENSIDADE
hist(dados$bytes.env,prob=T)

#DISTRIBUIÇÃO ACUMULADA EMPÍRICA
plot(ecdf(dados$bytes.env))

Medidas de dispersão e histograma em Python

import numpy as np
import pandas

URL = "https://raw.githubusercontent.com/"
pathGithub = "andersonara/datasets/master/"
arquivo    = "amostra_servidor.csv"

dados = pandas.read_csv(URL+pathGithub+arquivo,sep=";",decimal=',')
#AMPLITUDADE
MAX =  np.max(dados['bytes.env'])
MIN =  np.min(dados['bytes.env'])
A   = MAX - MIN
A
## 6611
#INTERVALO INTERQUALÍTICO
q3  =  np.percentile(dados['bytes.env'], 75)
q1  =  np.percentile(dados['bytes.env'], 25)
iiq = q3 - q1
iiq 
## 892.0
#VARIÂNCIA AMOSTRAL
np.var(dados['bytes.env'],ddof=1)
## 4893541.20952381
#DESVIO PADRÃO AMOSTRAL
np.std(dados['bytes.env'],ddof=1)
## 2212.1349889922653
#HISTOGRAMA DE FRÊQUENCIA
import matplotlib.pyplot as plt
plt.hist(dados['bytes.env'])
## (array([11.,  0.,  1.,  0.,  0.,  0.,  1.,  0.,  1.,  1.]), array([1690. , 2351.1, 3012.2, 3673.3, 4334.4, 4995.5, 5656.6, 6317.7,
##        6978.8, 7639.9, 8301. ]), <BarContainer object of 10 artists>)
plt.show()

#HISTOGRAMA DE DENSIDADE
import matplotlib.pyplot as plt
plt.hist(dados['bytes.env'],density=True)
## (array([0.00110926, 0.        , 0.00010084, 0.        , 0.        ,
##        0.        , 0.00010084, 0.        , 0.00010084, 0.00010084]), array([1690. , 2351.1, 3012.2, 3673.3, 4334.4, 4995.5, 5656.6, 6317.7,
##        6978.8, 7639.9, 8301. ]), <BarContainer object of 10 artists>)
plt.show()

#IMPORTANDO A BIBLIOTECA STASMODELS
from statsmodels.distributions.empirical_distribution import ECDF

#DISTRIBUIÇÃO ACUMULADA EMPÍRICA
ecdf=ECDF(dados['bytes.env'])
plt.plot(ecdf.x, ecdf.y)
plt.show()