Distribuição Gaussiana

Modelos de Mistura em R

Victor Medina

Researcher at The University of Edinburgh

Modelo de mistura para o conjunto Gender

Modelos de Mistura em R

Pacotes para ajustar modelos de mistura

  • mixtools
    • A distribuição de Poisson não está implementada.
  • bayesmix
    • Inferência Bayesiana está fora do escopo do curso.
  • EMCluster
    • Apenas distribuições Gaussianas.
  • flexmix
    • Tem todas as distribuições que precisamos e dá flexibilidade para modelos mais complexos.
Modelos de Mistura em R

Propriedades da distribuição Gaussiana

Média

Desvio padrão

Modelos de Mistura em R

Amostrando de uma distribuição Gaussiana

Para gerar amostras de uma distribuição Gaussiana:

  • rnorm(n, mean, sd)

Exemplo: gere 100 valores de uma Gaussiana com média 10 e desvio padrão 5

 

> population_sample <- rnorm(n = 100, mean = 10, sd = 5)
> head(population_sample)
[1]  6.248874  9.564190 16.006521  9.139647 10.114969 16.423538
Modelos de Mistura em R

Estimativa da média

  • Não sabemos a média e o desvio padrão, só as observações
    • Precisam ser estimados a partir das observações
  • Para estimar a média, calcule a média amostral

 

> mean_estimate <- mean(population_sample)
10.35759
Modelos de Mistura em R

Para estimar o sd, faça o seguinte procedimento

$$value_i\rightarrow (. -mean\_estimate)\rightarrow (.)^2\rightarrow mean (.)\rightarrow \sqrt{(.)}$$

> population_sample %>%  
+   subtract(mean_estimate) %>%
+   raise_to_power(2) %>% mean() %>% sqrt()
5.318641
  • Usando a função sd
> standard_deviation_estimate <- sd(population_sample)
> standard_deviation_estimate
5.345435
Modelos de Mistura em R

Visualizando a distribuição Gaussiana estimada

# Transformar a amostra em um data frame
population_sample <- data.frame(x = population_sample)

# Plotar o histograma
ggplot(data = population_sample) + 
   geom_histogram(aes(x = x, y = ..density..)) +
   stat_function(geom = "line", 
                 fun = dnorm, 
                 args = list(mean = mean_estimate, 
                             sd = standard_deviation_estimate))
Modelos de Mistura em R

Modelos de Mistura em R

Vamos praticar!

Modelos de Mistura em R

Preparing Video For Download...