Mi trama de datos tiene varias columnas de la siguiente manera:obtener la media columna A basado en un rango de valores de la columna B
df1 <- data.frame(A = c(1,2,4), B=c(1,3,1), C=c(1,1,3))
que tienen dos condiciones para obtener valores promedio para la columna A.
- Condición 1: Quiero obtener el promedio de la columna A cuando B es 1, es decir, solo se promediarán row1 y row2.
- Condición 2: Quiero obtener el promedio de la columna B cuando los valores de la columna A son mayores que 1 pero menores que 3, es decir, solo se considerará la fila 2.
Sé que puedo usar el filtro para cortar el marco de datos para tener la columna B = 1 solamente. Sin embargo, no estoy seguro de cómo hacerlo cuando quiero que la columna B se considere como un rango dentro de 1 y 3.
¿Hay alguna forma más inteligente de obtener los valores promedio de la columna sin cortar el marco de datos en un tamaño más pequeño? ¿primero?
En condición 1: 'B == 1' en las filas 1 y 3, no 1 y 2. ¿Es esto un error tipográfico? – Chase
vea también '? Cut' y'? Tapply' o '? Aggregate' o ... –