Como você ajusta uma distribuição Poisson aos dados da tabela?

8

Recebi uma tabela de e , que são tais que o número de indica um quantidade de filhos que todos têm.x=(0,1,2,3,4,5,6)y=(3062,587,284,103,33,4,2)xiyi

Me pediram para ajustar uma distribuição de Poisson a isso.

O que significa ajustar uma distribuição de Poisson a isso?

Aqui, p.8:
http://www.stats.ox.ac.uk/~marchini/teaching/L5/L5.notes.pdf

diz-se que o ajuste de Poisson envolve o cálculo de para cada . Mas onde é que o s go? É apropriado calcular s?P(X=x)xyP(X=x)

mavavilj
fonte
Você está sendo solicitado a ajustar um modelo de regressão de Poisson a esses dados. Isso deve ajudar: onlinecourses.science.psu.edu/stat504/node/168 . Além disso, adicione a etiqueta de auto-estudo a esta pergunta de lição de casa.
StatsStudent

Respostas:

11

Ao "ajustar a distribuição aos dados", queremos dizer que alguma distribuição (função matemática) é usada como modelo , que pode ser usada para aproximar a distribuição empírica dos dados que você possui. Se você estiver ajustando a distribuição aos dados, precisará inferir os parâmetros de distribuição dos dados. Você pode fazer isso usando algum software que faça isso automaticamente (por exemplo, fitdistrplusem R), ou calculando manualmente a partir de seus dados, por exemplo, usando a máxima probabilidade (consulte a entrada relevante na Wikipedia sobre distribuição de Poisson ).

No gráfico abaixo, você pode ver seus dados plotados com a distribuição de Poisson ajustada. Como você pode ver, a linha não se encaixa perfeitamente, pois é apenas uma aproximação.

insira a descrição da imagem aqui

Entre outros métodos, uma das abordagens para esse problema é usar a máxima probabilidade . Lembre-se de que a probabilidade é uma função dos parâmetros para os dados fixos e, maximizando essa função, podemos encontrar parâmetros "mais prováveis", dados os dados que temos, isto é,

L(λ|x1,,xn)=if(xi|λ)

onde no seu caso é a função de massa de probabilidade de Poisson. A maneira direta e numérica de encontrar apropriado seria usar o algoritmo de otimização. Para isso, primeiro você define a função de probabilidade e pede ao algoritmo que encontre o ponto em que a função atinge o máximo:fλ

# negative log-likelihood (since this algorithm looks for minimum)
llik <- function(lambda) -sum(dpois(x, lambda, log = TRUE)*y)
opt.fit <- optimize(llik, c(0, 10))$minimum

Você pode notar algo estranho nesse código: eu multiplico dpois()por y. Os dados que você possui são fornecidos na forma de uma tabela, na qual, para cada valor de , temos contagens , enquanto a função de probabilidade é definida em termos de dados brutos, e não nessas tabelas. Você pode recriar os dados brutos desses valores repetindo cada um dos exatamente vezes (ou seja, em R) e usando isso como entrada para o seu software estatístico, mas você pode adotar uma abordagem mais inteligente. Probabilidade é um produto de . Multiplicando para idênticos exatamentexiyixiyirep(x, y)f(xi|λ)f(xi|λ)xiyi vezes é o mesmo que tomaryif(xi|λ)yiif(xi|λ)yiilogf(xi|λ)×yi

No entanto, existe um caminho mais simples a seguir. Nós sabemos que a média empírica de 's é o estimador de máxima probabilidade de (ou seja, ele nos permite estimar esse valor de que maximiza a probabilidade), de modo que em vez de usar o software de otimização, podemos simplesmente calcular a média. Como você tem dados na forma de uma tabela com contagens, o caminho mais direto a seguir seria simplesmente usar a média ponderada média de onde são usados ​​como pesos.xλλxiyi

mx <- sum(x*(y/sum(y)))

Isso leva a resultados idênticos, como se você tivesse calculado a média aritmética a partir dos dados brutos. Maximizando a probabilidade usando o algoritmo de otimização e levando a liderança média a quase exatamente os mesmos resultados:

> mx
[1] 0.3995092
> opt.fit
[1] 0.3995127

Portanto, não é mencionado em nenhum lugar das suas anotações, pois elas são criadas artificialmente como uma maneira de armazenar esses dados de forma agregada (como uma tabela), em vez de listar todos os primas . Como mostrado acima, você pode aproveitar os dados nesse formato.y4075x

Os procedimentos acima permitem encontrar o "melhor ajuste" e é assim que você ajusta a distribuição aos dados - encontrando esses parâmetros da distribuição, que os ajustam aos dados empíricos.λ


Você comentou que ainda não está claro para você por que os são considerados pesos. A média aritmética pode ser considerada como um caso especial de média ponderada em que todos os pesos são iguais e iguais a :yi1/N

x1++xnN=1N(x1++xn)=1Nx1++1Nxn

Agora pense em como seus dados são armazenados. e significa que você tem quatro cincos , e significa etc. Quando você calcula a média , primeiro você precisa somar, então: . Isso leva ao uso de contagens como pesos para média ponderada, fornecendo exatamente o mesmo que média aritmética com dados brutosx6=5y6=4x6={5,5,5,5}x7=6y7=2x7={6,6}5+5+5+5=5×4=x6×y6

x1y1++xnyny1++yn=x1y1N++xnynN=x1N++x1Ny1 times++xnN++xnNyn times

onde . A mesma idéia foi aplicada à função de probabilidade ponderada por contagens. O que pode ser enganoso aqui é que, em alguns casos, usamos para denotar ésimo valor observado de , enquanto no seu caso é um valor específico de que foi observado vezes. Como foi dito anteriormente, essa é apenas uma maneira alternativa de armazenar os mesmos dados.N=iyixiiXxiXyi

Tim
fonte
Mas como alguém calcula isso? Não entendo a conexão entre Poisson, x e y. Eu acho que é o que se liga ao pmf de Poisson como , mas como o pmf de Poisson está relacionado aos s? xky
mavavilj
Então, ajustar um modelo significa calcular o empírico) para cada ? P(X=xi)xi
mavavilj
λ
y
y
0

Acho que a resposta é encontrar a média dos dados, que será a lambda do processo de Poisson. Dado que os dados estão na tabela de frequências, encontre o valor esperado / média ponderada, que, conforme explicado acima, é igual à média aritmética dos dados brutos.

Aravot
fonte