Tengo el vector
x <- c(1,2,3,4,5,5,5,6,6,6,6,
7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
7,7,7,7,7,7,7,7,8,8,8,8,9,9,9,10)
(mi vector real tiene una longitud de> 10,000) y me gustaría encontrar los intervalos donde se encuentra el 90% de la densidad. ¿Es quantile(x, probs=c(0.05,0.95), type=5)
el más apropiado o hay alguna otra manera?
Respuestas:
Como se señaló anteriormente, hay muchas formas diferentes de definir un intervalo que incluye el 90% de la densidad. Uno que aún no se ha señalado es el intervalo de densidad [posterior] más alto ( wikipedia ), que se define como "el intervalo más corto para el cual la diferencia en los valores empíricos de la función de densidad acumulativa de los puntos finales es la probabilidad nominal".
fuente
Ciertamente parece el enfoque más directo. La función es bastante rápida. Lo uso todo el tiempo en muestras que son cientos de veces más grandes que la que está utilizando, y la estabilidad de las estimaciones debería ser buena para el tamaño de su muestra.
Hay funciones en otros paquetes que proporcionan conjuntos más completos de estadísticas descriptivas. El que uso es
Hmisc::describe
, pero hay varios otros paquetes condescribe
funciones.fuente
Su manera parece sensata, especialmente con los datos discretos en el ejemplo,
pero otra forma sería usar un núcleo de densidad calculada:
fuente
Si. :-). Es posible que la salida de
stats::density
sea más útil.fuente