variacion tabla studio sacar percentiles para mediana intervalos hacer frecuencias frecuencia descriptivo datos crear como coeficiente analisis agrupados r statistics percentile

tabla - Cálculo del percentil de la columna del conjunto de datos



tabla de frecuencia para datos agrupados en r (4)

Una rápida para ti, queridos R gurús:

Estoy haciendo una tarea y, en este ejercicio, se me ha pedido que obtenga estadísticas básicas del conjunto de datos de infert (está incorporado), y específicamente una de sus columnas, infert$age .

Para cualquiera que no esté familiarizado con el conjunto de datos:

> table_ages # Which is just subset(infert, select=c("age")); age 1 26 2 42 3 39 4 34 5 35 6 36 7 23 8 32 9 21 10 28 11 29 ... 246 35 247 29 248 23

Tuve que encontrar valores medianos de la columna, varianza, sesgo, desviación estándar que estaban todos bien, hasta que me pidieron que encontrara la columna "percentiles" .

No he podido encontrar nada hasta ahora, y quizás lo haya traducido incorrectamente del griego, el idioma de la tarea. Era "ποσοστημόρια", Google Translate señaló que el término en inglés era "percentiles".

¿Algún tutorial o idea sobre infert$age encontrar esos "percentiles" de infert$age ?


La función quantile() hará mucho de lo que probablemente desee, pero dado que la pregunta era ambigua, proporcionaré una respuesta alternativa que haga algo ligeramente diferente a la quantile() .

ecdf(infert$age)(infert$age)

generará un vector de la misma longitud que la infert$age dando la proporción de la infert$age que está debajo de cada observación. Puede leer la documentación de ecdf , pero la idea básica es que ecdf() le dará una función que devuelve la distribución empírica acumulativa. Por ecdf(X)(Y) tanto, ecdf(X)(Y) es el valor de la distribución acumulativa de X en los puntos en Y. Si quisiera conocer solo la probabilidad de estar por debajo de 30 (por lo tanto, qué percentil 30 está en la muestra), podría decir

ecdf(infert$age)(30)

La principal diferencia entre este enfoque y el uso de la función quantile() es que el quantile() requiere que se pongan las probabilidades para superar los niveles, y esto requiere que se pongan los niveles para superar las probabilidades.


Si ordena un vector x , y encuentra los valores que están a mitad de camino a través del vector, acaba de encontrar una mediana, o percentil 50. La misma lógica se aplica a cualquier porcentaje. Aquí hay dos ejemplos.

x <- rnorm(100) quantile(x, probs = c(0, 0.25, 0.5, 0.75, 1)) # quartile quantile(x, probs = seq(0, 1, by= 0.1)) # decile


También puede usar el paquete hmisc que le dará los siguientes percentiles:

0.05, 0.1, 0.25, 0.5, 0.75, 0.9, 0.95

Solo usa la descripción (table_ages)


table_ages <- subset(infert, select=c("age")) summary(table_ages) # age # Min. :21.00 # 1st Qu.:28.00 # Median :31.00 # Mean :31.50 # 3rd Qu.:35.25 # Max. :44.00

Esto es probablemente lo que están buscando. summary(...) aplicado a un valor numérico devuelve los percentiles mínimo, máximo, medio, medio y 25 y 75 de los datos.

Tenga en cuenta que

summary(infert$age) # Min. 1st Qu. Median Mean 3rd Qu. Max. # 21.00 28.00 31.00 31.50 35.25 44.00

Los números son los mismos pero el formato es diferente. Esto se debe a que table_ages es un marco de datos con una columna (edades), mientras que infert$age es un vector numérico. Intente escribir summary(infert) .