Pourquoi ecdf utilise-t-il une fonction pas à pas et non une interpolation linéaire?

13

Les fonctions CDF empiriques sont généralement estimées par une fonction de pas. Y a-t-il une raison pour laquelle cela se fait de cette manière et non en utilisant une interpolation linéaire? La fonction pas a-t-elle des propriétés théoriques intéressantes qui nous font la préférer?

Voici un exemple des deux:

ecdf2 <- function (x) {
  x <- sort(x)
  n <- length(x)
  if (n < 1) 
    stop("'x' must have 1 or more non-missing values")
  vals <- unique(x)
  rval <- approxfun(vals, cumsum(tabulate(match(x, vals)))/n, 
                    method = "linear", yleft = 0, yright = 1, f = 0, ties = "ordered")
  class(rval) <- c("ecdf", class(rval))
  assign("nobs", n, envir = environment(rval))
  attr(rval, "call") <- sys.call()
  rval
}


set.seed(2016-08-18)
a <- rnorm(10)
a2 <- ecdf(a)
a3 <- ecdf2(a)

par(mfrow = c(1,2))
curve(a2, -2,2, main = "step function ecdf")
curve(a3, -2,2, main = "linear interpolation function ecdf")

entrez la description de l'image ici

Tal Galili
la source
Related ...................................
8
"... estimé par une fonction de pas" dément une idée fausse subtile: l'ECDF n'est pas simplement estimé par une fonction de pas; il est une telle fonction par définition. Il est identique au CDF d'une variable aléatoire. Plus précisément, étant donné toute séquence finie de nombres , définissez un espace de probabilité avec , discret et uniforme. Soit la variable aléatoire affectant à . Le ECDF est le CDF de . ( Ω , S , Px1,x2,,xn(Ω,S,P)Ω={1,2,,n}SPXxiiXCette énorme simplification conceptuelle est un argument convaincant pour la définition.
whuber

Réponses:

22

C'est par définition.

La fonction de distribution empirique d'un ensemble d'observations est définie par(Xn)

Fe(t)=#{XnXnt}n

Où est la cardinalité définie. Il s'agit, par nature, d'une fonction échelonnée. Il converge vers le CDF réel presque sûrement .#

Notez également que pour toute distribution avec pour au moins deux (en particulier les distributions discrètes non dégénérées), votre variante d'ECDF ne converge pas vers le CDF réel. Par exemple, considérons une distribution de Bernoulli avec CDFP(X=x)0x

FX(x)=pχx0+(1p)χx1
c'est une fonction pas à pas alors qu'ecdf2 convergera vers (une fonction linéaire par morceaux reliant et .( 0 , p )χx0(p+(1p)min(x,1))(0,p)(1,1)
AlexR
la source
Merci Alex. Y a-t-il donc un autre nom pour la fonction que j'ai écrite? (parce que je suppose que cela converge également vers le CDF réel)
Tal Galili
5
@TalGalili Ce n'est pas le cas. Considérons une distribution de Bernoulli. Votre ecdf2 ne convergera pas dans ce cas. Vous pourriez l'appeler un ecdf lissé. Je soupçonne qu'il convergera vers le CDF réel si le CDF réel n'a pas de points avec une probabilité non nulle, sauf pour les points extrêmes (où vous ne lissez pas)
AlexR
@AlexR, vous pouvez modifier votre réponse pour ajouter ce commentaire, car les distributions discrètes sont la raison d'une telle définition - il répond donc à la question "pourquoi".
Tim
1
@Tim Done.
AlexR
Merci. Existe-t-il un moyen de définir une fonction empirique continue qui convergerait vers la fonction pas à pas mais serait entièrement monotone (c'est-à-dire sans aucun "saut" pointu)?
Tal Galili