r - Encontrar el porcentaje de un valor específico en la columna de un conjunto de datos

CorePress2024-01-24  7

Tengo un conjunto de datos llamado universidad y una de las columnas es "aceptada". Hay dos valores para esta columna: 1 (que significa que el estudiante fue aceptado) y 0 (que significa que el estudiante no fue aceptado). Debía encontrar el porcentaje de estudiantes aceptados.

Yo hice esto...

table(college$accepted)

lo que me dio la frecuencia de 1 y 0. (1 = 44,224 y 0 = 75,166). Luego sumé manualmente esos dos valores (119,390) y dividí 44,224/119,390. Esto está bien y me da el valor que estaba buscando. Pero realmente me gustaría saber cómo podría hacer esto con código R, ya que estoy seguro de que hay una manera de hacerlo en la que simplemente no he pensado.

¡Gracias!



------------------------------------

Si es una columna 0/1 simple, entonces solo necesitas tomar la media de la columna.

mean_accepted <- mean(df$accepted)

0



------------------------------------

Quizás puedas usar prop.table como se muestra a continuación

prop.table(table(college$accepted))["1"]

2

¡Gracias! Sólo una pregunta: ¿funcionaría esto con una columna no numérica? Digamos que tengo valores de sí y no, ¿podría simplemente usarlos?su función y reemplazar "1" con "Sí"? ¿O qué pasaría si hubiera más de dos valores? ¿Funcionaría todos igual?

-zinger001

26/03/2021 a las 20:37

@zinger001 Funciona con columnas no numéricas y más de dos valores. Sólo necesita escribir el nombre del valor interesado, por ejemplo, "Sí", para ver su proporción.

- ThomasIsCoding

26/03/2021 a las 20:39



------------------------------------

primero puedes sumar la columna y luego contar el número total en la columna

sum(college$accepted)/length(college$accepted)



------------------------------------

Para que el código sea más explícito y describa mejor su intención, le sugiero utilizar una condición para identificar los casos que cumplen con sus criterios de inclusión. Por ejemplo:

college$accepted == 1

Luego toma el promedio del vector lógico para calcular la proporción (entre 0 y 1), multiplica por 100 para convertirlo en un porcentaje.

100 * mean(college$accepted == 1, na.rm = TRUE)

Su guía para un futuro mejor - libreflare
Su guía para un futuro mejor - libreflare