Como modelar essa distribuição de formato ímpar (quase um J reverso)

25

Minha variável dependente mostrada abaixo não se encaixa em nenhuma distribuição de estoque que eu conheça. A regressão linear produz resíduos não-normais, inclinados à direita, que se relacionam com o Y previsto de uma maneira estranha (2º gráfico). Alguma sugestão para transformações ou outras maneiras de obter resultados mais válidos e melhor precisão preditiva? Se possível, eu gostaria de evitar a categorização desajeitada em, digamos, 5 valores (por exemplo, 0, lo%, med%, oi%, 1).

insira a descrição da imagem aqui

insira a descrição da imagem aqui

rolando2
fonte
7
Seria melhor nos contar sobre esses dados e de onde eles vieram: algo restringiu uma distribuição que naturalmente se estende além do intervalo . É possível que você tenha usado algum método de medição ou procedimento estatístico que não seja apropriado para seus dados. Tentar consertar esse erro com técnicas sofisticadas de ajuste de distribuição, reexpressões não lineares, binning etc., apenas comporia o erro, portanto seria bom contornar o problema completamente. [0,1]
whuber
2
@ whuber - Um bom pensamento, mas a variável foi criada por meio de um complexo sistema burocrático que infelizmente é imutável. Não tenho a liberdade de divulgar a natureza das variáveis ​​envolvidas aqui.
Rolando2
11
Ok, valeu a pena tentar. Estou pensando que, em vez de transformar os dados, você ainda pode querer reconhecer o mecanismo de fixação na forma de um procedimento de ML para fazer a regressão: isso seria semelhante a visualizá-los como dados censurados à esquerda e à direita .
whuber
Tente a distribuição beta com parâmetros menores que a unidade, en.wikipedia.org/wiki/File:Beta_distribution_pdf.svg
Alecos Papadopoulos
2
Esse tipo de banheira ou distribuição em forma de u é comum nos leitores de revistas, onde muitas pessoas lêem uma única edição de uma publicação, por exemplo, em um consultório médico ou são assinantes que veem cada edição com um número considerável de leitores no meio. Vários comentários e respostas apontaram a distribuição beta como uma solução possível. A literatura que eu conheço aponta para o binômio beta como a opção mais adequada.
Mike Hunter

Respostas:

47

Métodos de regressão censurada podem manipular dados como este. Eles assumem que os resíduos se comportam como na regressão linear comum, mas foram modificados para que

  1. (Censura à esquerda): todos os valores menores que um limite baixo, independente dos dados, mas que podem variar de um caso para outro, não foram quantificados; e / ou

  2. (Censura à direita): todos os valores maiores que um limite alto, independente dos dados (mas podem variar de um caso para outro), não foram quantificados.

"Não quantificado" significa que sabemos se um valor cai ou não abaixo ou acima de seu limite, mas é tudo.

YX

YXβ+ε

εFσfσσ(xi,yi)

Λ=i=1nlogfσ(yixiβ).

i=1n1yii=n1+1n2yiyidados. A probabilidade do log é obtida da mesma maneira que antes: é o log do produto das probabilidades.

Λ=i=1n1logFσ(yixiβ)+i=n1+1n2logfσ(yixiβ)+i=n2+1nlog(1Fσ(yixiβ)).

(β,σ)

Na minha experiência, esses métodos podem funcionar bem quando menos da metade dos dados são censurados; caso contrário, os resultados podem ser instáveis.


Aqui está um Rexemplo simples de como usar o censRegpacote para ilustrar como OLS e resultados censurados podem diferir (muito), mesmo com muitos dados. Reproduz qualitativamente os dados na pergunta.

library("censReg")
set.seed(17)
n.data <- 2960
coeff  <- c(-0.001, 0.005)
sigma  <- 0.005
x      <- rnorm(n.data, 0.5)
y      <- as.vector(coeff %*% rbind(rep(1, n.data), x) + rnorm(n.data, 0, sigma))
y.cen           <- y
y.cen[y < 0]    <- 0
y.cen[y > 0.01] <- 0.01
data = data.frame(list(x, y.cen))

0.0050.0010.005

Vamos usar os dois lme censRegpara ajustar uma linha:

fit <- censReg(y.cen ~ x, data=data, left=0.0, right=0.01)
summary(fit)

Os resultados dessa regressão censurada, dados por print(fit), são

(Intercept)           x       sigma 
  -0.001028    0.004935    0.004856 

0.0010.0050.005

fit.OLS <- lm(y.cen ~ x, data=data)
summary(fit.OLS)

O ajuste OLS, dado por print(fit.OLS), é

(Intercept)            x  
   0.001996     0.002345  

summary0.002864

Para comparação, vamos limitar a regressão aos dados quantificados:

fit.part <- lm(y[0 <= y & y <= 0.01] ~ x[0 <= y & y <= 0.01])
summary(fit.part)

(Intercept)  x[0 <= y & y <= 0.01]  
   0.003240               0.001461  

Pior ainda!

Algumas fotos resumem a situação.

lineplot <- function() {
  abline(coef(fit)[1:2], col="Red", lwd=2)
  abline(coef(fit.OLS), col="Blue", lty=2, lwd=2)
  abline(coef(fit.part), col=rgb(.2, .6, .2), lty=3, lwd=2)
}
par(mfrow=c(1,4))
plot(x,y, pch=19, cex=0.5, col="Gray", main="Hypothetical Data")
lineplot()
plot(x,y.cen, pch=19, cex=0.5, col="Gray", main="Censored Data")
lineplot()
hist(y.cen, breaks=50, main="Censored Data")
hist(y[0 <= y & y <= 0.01], breaks=50, main="Quantified Data")

Parcelas

00.01

Y0.00320.0037

whuber
fonte
ótima resposta (+1). Se formos remover visualmente os dois spkies de censura, parece-me que a variável dependente tem algo próximo a uma distribuição exponencial, como se os dados subjacentes tivessem a duração de algum processo. Isso é algo a ter em conta?
user603
@ user603 Simulei os valores quantificados com parte do braço de um gaussiano, na verdade :-). Temos que tomar cuidado aqui, porque o modelo de probabilidade relevante pertence aos resíduos e não à própria variável de resposta. Embora seja um pouco complicado, pode-se fazer gráficos residuais censurados e até gráficos de probabilidade censurados para avaliar a adequação a alguma distribuição hipotética.
whuber
o meu ponto é que, com um Gaussian duplamente censurado, o histograma de que os valores sem censura deve ser um pouco chato, mas eles parecem estar em declínio gentilmente quanto nos afastamos 0.
user603
11
@ user603 Ah, não, não é esse o caso: veja você mesmo o histograma dos valores quantificados. Eles parecerão inclinar-se quase linearmente para baixo, exatamente como na pergunta.
whuber
2
Tentei a regressão censurada no meu conjunto de dados e os resultados tiveram uma validação cruzada melhor do que os do OLS. Uma boa adição ao meu kit de ferramentas - thx.
Roland2
9

Os valores estão sempre entre 0 e 1?

Nesse caso, você pode considerar uma distribuição beta e uma regressão beta.

Mas não deixe de pensar no processo que leva aos seus dados. Você também pode fazer um modelo inflado em 0 e 1 (0 modelo inflado é comum, você provavelmente precisará estender para 1 inflado por si mesmo). A grande diferença é que esses picos representam um grande número exato de zeros e zeros ou apenas valores próximos de zeros e zeros.

Pode ser melhor consultar um estatístico local (com um contrato de não divulgação para que você possa discutir os detalhes de onde os dados vêm) para descobrir a melhor abordagem.

Greg Snow
fonte
2
01
Sim, sempre na faixa de 0% a 1% ... E esses picos são exatamente de 0% e 1%. Modelos inflados com zero ou zero e um são aplicáveis ​​a dados não contados como esses?
Rolando2
11
Há um normal inflado zero, mas isso não se aplica aqui.
Peter Flom - Restabelece Monica
Com zeros e zeros exatos, mas contínuo, parece que pode haver uma distribuição contínua subjacente com valores fora dessa região arredondados para 0 ou 1. Esse seria um caso duplamente censurado e os modelos poderiam ser adequados usando essa ideia.
Greg Snow
4

Em concordância com o conselho de Greg Snow, ouvi que os modelos beta também são úteis nessas situações (ver Smithson & verkuilen, 2006, A Better Lemon Squeezer ), bem como na regressão quantílica ( Bottai et al., 2010 ), mas esses parecem efeitos de piso e teto tão pronunciados que podem ser inapropriados (especialmente a regressão beta).

Outra alternativa seria considerar tipos de modelos de regressão censurados, em particular o Modelo Tobit , onde consideramos que os resultados observados são gerados por alguma variável latente subjacente que é contínua (e presumivelmente normal). Não vou dizer que esse modelo contínuo subjacente é razoável, considerando seu histograma, mas você pode encontrar algum suporte para ele, pois a distribuição (ignorando o piso) tem uma densidade mais alta em valores mais baixos do instrumento e diminui lentamente para valores mais altos. valores.

Boa sorte, porém, que a censura é tão dramática que é difícil imaginar recuperar muitas informações úteis dentro dos baldes extremos. Parece-me que quase metade da sua amostra está dentro das caixas do piso e do teto.

Andy W
fonte