consulta

consulta

by DELPIANO MARÍA -
Number of replies: 2

Hola!!

Quería consultar sobre el ejercicio 6 de los entregables

Cuando pide: "programe los siguientes núcleos" Debemos sólo programar los núcleos o el estimador de la densidad usando ese núcleo? En tal caso, debemos también programar un h óptimo? 

Programe los núcleos pero no consigo programar el estimador de la densidad, me complica la parte de la sumatoria de los K(x-Xi) 

gracias! 

Saludos

 

 

In reply to DELPIANO MARÍA

Re: consulta

by FORETS MARCELO -

>  Debemos también programar un h óptimo? 

Si, se propone calcular un "h" optimo, que se pueda utilizar con distintos núcleos; ver el material teórico de la clase 21.

> Me complica la parte de la sumatoria de los K(x-Xi).

El estimador es una suma de funciones centradas en las observaciones. Una idea es, en un primer paso, armar una grilla para los valores de "x" donde se va evaluar el estimador, y en un segundo paso, evaluar el kernel en cada uno de esos puntos.

Para armar la grilla en R se puede usar, por ejemplo, la función seq. Es vital que cubra el rango de valores xi de los datos, y que el paso (que se puede especificar con la opción "by") sea lo suficientemente chico.

Notar que en R, las funciones automáticamente se sobrecargan aceptar tanto escalares como vectores; por ejemplo, si tu definis

K_gauss <- function(u){1/sqrt(2*pi) * exp(-u^2 / 2)

Esta función se puede utilizar automaticamente con estos dos tipos de entrada:

R> K_gauss(1.0)
[1] 0.2419707
R> K_gauss(c(1.0, 2.0))
[1] 0.24197072 0.05399097

Este comportamiento permite que uno pueda escribir codigo para trabajar con vectores que se parece al que uno escribe en el papel. Por ejemplo, si quiero evaluar el kernel en los puntos x1 = 1.0 y x2 = 2.0, para todos los valores del vector grilla xgrid que comentaba en el párrafo anterior, se puede hacer:

R> sapply(c(1.0, 2.0), function(u) K_gauss(xgrid - u))

Este comando va a generar una matrix con dos columnas (una por cada valor de "xi"), y tantas filas como valores tenga la grilla de las "x".

Espero que sirva,

Saludos,

Marcelo.-