J'ai besoin d'estimer la fonction de densité sur la base d'un ensemble d'observations à l'aide de l'estimateur de densité du noyau. Sur la base du même ensemble d'observations, j'ai également besoin d'estimer les première et deuxième dérivées de la densité en utilisant les dérivées de l'estimateur de densité du noyau. La bande passante aura certainement un grand effet sur le résultat final.
Tout d'abord, je sais qu'il existe quelques fonctions R qui donnent la bande passante de KDE. Je ne sais pas lequel est le plus préféré. Quelqu'un peut-il recommander une de ces fonctions R pour la bande passante de KDE?
Deuxièmement, pour le dérivé de KDE, dois-je choisir la même bande passante?
r
nonparametric
pdf
kernel-smoothing
user13154
la source
la source
Réponses:
La largeur de bande optimale pour l'estimation dérivée sera différente de la largeur de bande pour l'estimation de densité. En général, chaque caractéristique d'une densité a son propre sélecteur de bande passante optimal.
Si votre objectif est de minimiser l'erreur quadratique moyenne intégrée (qui est le critère habituel), cela n'a rien de subjectif. Il s'agit de dériver la valeur qui minimise le critère. Les équations sont données dans la section 2.10 de Hansen (2009) .
La partie délicate est que la bande passante optimale est fonction de la densité elle-même, donc cette solution n'est pas directement utile. Il existe un certain nombre de méthodes pour tenter de résoudre ce problème. Celles-ci se rapprochent généralement de certaines fonctionnelles de la densité en utilisant des approximations normales. (Remarque: il n'y a pas d'hypothèse que la densité elle-même est normale. L'hypothèse est que certaines fonctionnelles de la densité peuvent être obtenues en supposant la normalité.)
L'endroit où les approximations sont imposées détermine la qualité du sélecteur de bande passante. L'approche la plus grossière est appelée "règle de référence normale" qui impose l'approximation à un niveau élevé. La fin de la section 2.10 dans Hansen (2009) donne la formule utilisant cette approche. Cette approche est implémentée dans la
hns()
fonction duks
package sur CRAN. C'est probablement le meilleur que vous obtiendrez si vous ne voulez pas écrire votre propre code. Vous pouvez donc estimer la dérivée d'une densité comme suit (en utilisantks
):Une meilleure approche, généralement connue sous le nom de sélecteur "plug-in direct", impose l'approximation à un niveau inférieur. Pour une estimation droite de la densité, il s'agit de la méthode Sheather-Jones, implémentée dans R using
density(x,bw="SJ")
. Cependant, je ne pense pas qu'il existe une fonction similaire disponible dans un package R pour l'estimation des dérivés.Plutôt que d'utiliser une estimation directe du noyau, vous pourriez être mieux avec un estimateur polynomial local. Cela peut être fait en utilisant la
locpoly()
fonction duks
package dans R. Encore une fois, aucune sélection de bande passante optimale n'est implémentée, mais le biais sera plus petit que pour les estimateurs du noyau. par exemple,la source