Necesito estimar la función de densidad basada en un conjunto de observaciones usando el estimador de densidad del núcleo. Basado en el mismo conjunto de observaciones, también necesito estimar la primera y segunda derivadas de la densidad usando las derivadas del estimador de densidad del núcleo. El ancho de banda ciertamente tendrá un gran efecto del resultado final.
Primero, sé que hay un par de funciones R que le dan ancho de banda a KDE. No estoy seguro de cuál es el más preferido. ¿Alguien puede recomendar una de estas funciones R para el ancho de banda de KDE?
En segundo lugar, para la derivada de KDE, ¿debería elegir el mismo ancho de banda?
r
nonparametric
pdf
kernel-smoothing
usuario13154
fuente
fuente
Respuestas:
El ancho de banda óptimo para la estimación derivada será diferente del ancho de banda para la estimación de densidad. En general, cada característica de una densidad tiene su propio selector de ancho de banda óptimo.
Si su objetivo es minimizar el error cuadrático medio integrado (que es el criterio habitual), no hay nada subjetivo al respecto. Se trata de derivar el valor que minimiza el criterio. Las ecuaciones se dan en la Sección 2.10 de Hansen (2009) .
La parte difícil es que el ancho de banda óptimo es una función de la densidad misma, por lo que esta solución no es directamente útil. Existen varios métodos para tratar de resolver ese problema. Estos usualmente se aproximan a algunos funcionales de la densidad usando aproximaciones normales. (Tenga en cuenta que no se asume que la densidad en sí misma es normal. La suposición es que se pueden obtener algunos funcionales de la densidad asumiendo la normalidad)
Donde se imponen las aproximaciones determina cuán bueno es el selector de ancho de banda. El enfoque más crudo se llama la "regla de referencia normal" que impone la aproximación a un nivel alto. El final de la Sección 2.10 en Hansen (2009) da la fórmula usando este enfoque. Este enfoque se implementa en la
hns()
función delks
paquete en CRAN. Probablemente sea lo mejor que obtendrá si no desea escribir su propio código. Entonces puede estimar la derivada de una densidad de la siguiente manera (usandoks
):Un mejor enfoque, generalmente conocido como selector de "conexión directa", impone la aproximación en un nivel inferior. Para la estimación de densidad directa, este es el método de Sheather-Jones, implementado en R usando
density(x,bw="SJ")
. Sin embargo, no creo que haya una instalación similar disponible en ningún paquete R para la estimación derivada.En lugar de utilizar la estimación directa del núcleo, es mejor que tenga un estimador polinómico local. Esto se puede hacer usando la
locpoly()
función delks
paquete en R. Una vez más, no hay una selección óptima de ancho de banda implementada, pero el sesgo será menor que para los estimadores del núcleo. p.ej,fuente