Calcular la mediana en función de los recuentos de valor

3

Tengo datos de cuántas CPU específicas tenemos y sus marcas de CPU. En base a esto, deseo calcular dinámicamente las estadísticas de mediana y cuartil.

Por ejemplo, tengo una tabla que se parece a

Nombre Contar Marcas
i7-5820k 3,3 GHz 6 núcleos 11 12,996
i7-950 3,1 GHz 4 núcleos 4 5595
i7-3820 3,6 GHz 4 núcleos 7 8998
i5-3570k 3,4 GHz 4 núcleos 1 7153

Lo que deseo hacer con los datos es contar las marcas de la primera fila 11 veces, la segunda 4 veces y así sucesivamente.

Actualmente, esto se trabaja en las hojas de cálculo de Google, pero supongo que una función similar debería estar disponible en la mayoría de las aplicaciones de hojas de cálculo.

Gnutt
fuente

Respuestas:

4

Dejando a un lado las matemáticas, puede usar la siguiente fórmula de matriz :

=MEDIAN(IF(COLUMN(A:Z)<=B2:B5,C2:C5))

CtrlShiftEnter

Notas:

  • IF(COLUMN(A:Z)<=B2:B5,C2:C5)genera una matriz 2D de 4 rows, 26 columnsdonde cada fila repite la celda en la columna C tantas veces como se especifica en la celda de la columna B; las entradas restantes en la fila son FALSE.

  • La MEDIANfunción ignora las FALSEceldas y evaluará las entradas reales en la matriz 2D generada.

CENIZA
fuente
1
Solución inteligente! +1
Excellll
1
Eso ES bastante hábil, @ASH
Bandersnatch
¿Supongo que esto no funcionaría si alguno de los recuentos fuera> 26?
Danny
@Danny Reemplace A: Z por A: AZ para extender a 52. Usted entiende la idea.
ASH
Claro que puede funcionar, pero está limitado por el número de columnas que soporta Excel (que parece ser 16,384 de un Google rápido) y ciertamente es posible tener una tabla de frecuencias con conteos superiores a eso. ¡Sin embargo, esta es una muy buena solución para cualquier cosa por debajo de eso!
Danny
0

Excel tiene una función CUARTIL () que puede usar. Pero su conjunto de datos es lo suficientemente pequeño como para que pueda obtener la respuesta casi por inspección.

Primero, mueva la fila con las CPU i7-950 al final de la lista. Hay 23 CPU en total, por lo que la mediana es el puntaje de la CPU clasificada 11.5. Del mismo modo, el primer cuartil es el puntaje de la CPU 5.75a clasificada.

En su caso, estas respuestas resultan ser 8998. Eso es un poco extraño, pero tiene que ver con la distribución de sus datos. Tanto el primer cuartil como el segundo caen en el mismo "contenedor". Imagínese si todos en los Estados Unidos pesaran 150 libras. Entonces el peso medio y todos los% de archivos serían 150 lbs.

PODRÍAS argumentar que tus valores de cuartil y mediana caen entre puntos de datos y luego interpolan entre los puntos de datos. Entonces calcularías el cuartil como 3/4 del camino entre 5595 y 8998. Y la mediana como a medio camino entre 8998 y 12,996.

Obtengo 8197.25 y 10,997.

Para ver lo que piensa la función CUARTIL (), cree una columna con 11 12,996, 7 8998, 1 7153 y 4 5595.

Luego use CUARTIL (rango, 1) y CUARTIL (rango, 2) para calcular el primer cuartil y la mediana. Aquí "rango" es la lista de 23 marcas.

EDITAR: la interpolación no es exactamente kosher aquí porque los puntajes de la CPU son todos exactos, y no un promedio de un rango de puntajes. Yo CREO . Supongo que buscó valores publicados de los puntajes de referencia para cada CPU.

No estoy seguro de qué sucedería si realmente ejecutara el punto de referencia en cada CPU. ¿El mismo tipo de CPU produciría un puntaje idéntico, o habría un rango de puntajes? Si hubiera alguna variación en los puntajes para CPU idénticas (quizás debido a la temperatura o ??), entonces la interpolación estaría justificada, creo.

Los comentarios son bienvenidos aquí.

Bandersnatch
fuente