Comment modéliser cette distribution de forme étrange (presque un J inversé)

25

Ma variable dépendante ci-dessous ne correspond à aucune distribution de stock que je sache. La régression linéaire produit des résidus quelque peu anormaux et asymétriques à droite qui se rapportent au Y prédit de manière étrange (2e graphique). Avez-vous des suggestions de transformations ou d'autres façons d'obtenir les résultats les plus valides et la meilleure précision prédictive? Si possible, je voudrais éviter de classer maladroitement, disons, 5 valeurs (par exemple, 0, lo%, med%, hi%, 1).

entrez la description de l'image ici

entrez la description de l'image ici

rolando2
la source
7
Vous feriez mieux de nous parler de ces données et de leur origine: quelque chose a bloqué une distribution qui s'étend naturellement au-delà de l' intervalle . Il est possible que vous ayez utilisé une méthode de mesure ou une procédure statistique qui n'est pas tout à fait appropriée pour vos données. Essayer de corriger une telle erreur avec des techniques d'ajustement de distribution sophistiquées, des ré-expressions non linéaires, le binning, etc., ne ferait qu'aggraver l'erreur, il serait donc bien de contourner complètement le problème. [0,1]
whuber
2
@whuber - Une bonne idée, mais la variable a été créée à travers un système bureacratique complexe qui est malheureusement gravé dans le marbre. Je ne suis pas libre de divulguer la nature des variables impliquées ici.
rolando2
1
D'accord, ça valait le coup. Je pense qu'au lieu de transformer les données, vous voudrez peut-être toujours reconnaître le mécanisme de serrage sous la forme d'une procédure ML pour effectuer la régression: cela reviendrait à les voir comme des données censurées à gauche et à droite .
whuber
Essayez la distribution bêta avec des paramètres plus petits que l'unité, en.wikipedia.org/wiki/File:Beta_distribution_pdf.svg
Alecos Papadopoulos
2
Ce type de baignoire ou de distribution en forme de U est courant chez les lecteurs de magazines où de nombreuses personnes liront un seul numéro d'une publication, par exemple, dans un cabinet de médecin ou bien sont des abonnés qui voient chaque numéro avec une poignée de lecteurs entre les deux. Plusieurs commentaires et réponses ont souligné la distribution bêta comme une solution possible. La littérature que je connais indique que le bêta-binôme est la meilleure option.
Mike Hunter

Réponses:

47

Les méthodes de régression censurée peuvent gérer des données comme celle-ci. Ils supposent que les résidus se comportent comme dans la régression linéaire ordinaire mais ont été modifiés de telle sorte que

  1. (Censure à gauche): toutes les valeurs inférieures à un seuil bas, indépendant des données (mais pouvant varier d'un cas à l'autre) n'ont pas été quantifiées; et / ou

  2. (Censure à droite): toutes les valeurs supérieures à un seuil haut, indépendant des données (mais pouvant varier d'un cas à l'autre) n'ont pas été quantifiées.

«Non quantifié» signifie que nous savons si une valeur tombe en dessous (ou au-dessus) de son seuil, mais c'est tout.

Les méthodes d'ajustement utilisent généralement un maximum de vraisemblance. Lorsque le modèle de la réponse correspondant à un vecteur X est sous la formeOuiX

OuiXβ+ε

avec iid ayant une distribution commune F σ avec PDF f σ (où σ sont des "paramètres de nuisance" inconnus), alors - en l'absence de censure - la probabilité logarithmique des observations ( x i , y i ) estεFσFσσ(Xje,yje)

Λ=je=1nbûcheFσ(yje-Xjeβ).

i=1n1yii=n1+1n2yiyiLes données. Le log vraisemblance s'obtient de la même manière qu'auparavant: c'est le log du produit des probabilités.

Λ=je=1n1bûcheFσ(yje-Xjeβ)+je=n1+1n2bûcheFσ(yje-Xjeβ)+je=n2+1nbûche(1-Fσ(yje-Xjeβ)).

(β,σ)

D'après mon expérience, de telles méthodes peuvent bien fonctionner lorsque moins de la moitié des données sont censurées; sinon, les résultats peuvent être instables.


Voici un Rexemple simple utilisant le censRegpackage pour illustrer comment OLS et les résultats censurés peuvent différer (beaucoup) même avec beaucoup de données. Il reproduit qualitativement les données de la question.

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,005-0,0010,005

Utilisons les deux lmet censRegpour ajuster une ligne:

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

Les résultats de cette régression censurée, donnés par print(fit), sont

(Intercept)           x       sigma 
  -0.001028    0.004935    0.004856 

-0,0010,0050,005

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

L'ajustement OLS, donné par print(fit.OLS), est

(Intercept)            x  
   0.001996     0.002345  

summary0,002864

À titre de comparaison, limitons la régression aux données quantifiées:

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  

Encore pire!

Quelques photos résument la situation.

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")

Parcelles

00,01

Oui0,00320,0037

whuber
la source
bonne réponse (+1). Si nous devions supprimer visuellement les deux spkies de censure, il me semble que la variable dépendante a quelque chose de proche d'une distribution exponentielle, comme si les données sous-jacentes avaient la longueur d'un processus. Est-ce quelque chose à prendre en compte?
user603
@ user603 J'ai simulé les valeurs quantifiées avec une partie du bras supérieur d'un gaussien, en fait :-). Nous devons faire attention ici, car le modèle de probabilité pertinent se rapporte aux résidus et non à la variable de réponse elle-même. Bien que ce soit un peu délicat, on peut faire des tracés résiduels censurés et même des tracés de probabilité censurés pour évaluer la qualité de l'ajustement à une distribution hypothétique.
whuber
mon point est qu'avec un gaussien doublement censuré, l'histogramme des valeurs non censurées devrait être quelque peu plat, mais elles semblent diminuer doucement alors que nous nous
éloignons
1
@ user603 Ah, non, ce n'est pas le cas: regardez vous-même l'histogramme des valeurs quantifiées. Ils sembleront s'incliner presque linéairement vers le bas, exactement comme dans la question.
whuber
2
J'ai essayé une régression censurée sur mon ensemble de données et les résultats ont été mieux validés que ceux d'OLS. Un bel ajout à ma boîte à outils - thx.
rolando2
9

Les valeurs sont-elles toujours comprises entre 0 et 1?

Si c'est le cas, vous pourriez envisager une distribution bêta et une régression bêta.

Mais assurez-vous de bien réfléchir au processus qui mène à vos données. Vous pouvez également faire un modèle gonflé 0 et 1 (0 modèles gonflés sont courants, vous devrez probablement étendre à 1 gonflé par vous-même). La grande différence est que ces pointes représentent un grand nombre de 0 et 1 exacts ou simplement des valeurs proches de 0 et 1.

Il peut être préférable de consulter un statisticien local (avec un accord de non-divulgation afin que vous puissiez discuter des détails d'où proviennent les données) pour déterminer la meilleure approche.

Greg Snow
la source
2
01
Oui, toujours de l'ordre de 0% à 1% ... Et ces pics sont en effet exactement à 0% et 1%. Les modèles à zéro ou à un et un gonflé sont-ils applicables à des données autres que celles-ci?
rolando2
1
Il y a une normale gonflée à zéro, mais cela ne s'applique pas ici.
Peter Flom - Réintègre Monica
Avec des 0 et des 1 exacts mais continus entre les deux, il semble qu'il puisse y avoir une distribution sous-jacente continue avec des vaues en dehors de cette région arrondis à 0 ou 1. Ce serait un cas doublement censuré et les modèles pourraient être adaptés en utilisant cette idée.
Greg Snow
4

En accord avec les conseils de Greg Snow, j'ai entendu dire que les modèles bêta sont également utiles dans de telles situations (voir Smithson & verkuilen, 2006, A Better Lemon Squeezer ), ainsi que la régression quantile ( Bottai et al., 2010 ), mais ces semblent être des effets de sol et de plafond si prononcés qu'ils peuvent être inappropriés (en particulier la régression bêta).

Une autre alternative serait de considérer les types de modèles de régression censurés, en particulier le modèle Tobit , où nous considérons que les résultats observés sont générés par une variable latente sous-jacente continue (et vraisemblablement normale). Je ne vais pas dire que ce modèle continu sous-jacent est raisonnable compte tenu de votre histogramme, mais vous pouvez le trouver car vous voyez que la distribution (en ignorant le sol) a une densité plus élevée à des valeurs inférieures de l'instrument et se réduit lentement à des valeurs plus élevées. valeurs.

Bonne chance cependant, cette censure est si dramatique qu'il est difficile d'imaginer récupérer beaucoup d'informations utiles dans les compartiments extrêmes. Il me semble que près de la moitié de votre échantillon se trouve dans les bacs de plancher et de plafond.

Andy W
la source