Calcular mediana com base em contagens de valor

3

Eu tenho dados de quantos CPUs específicas temos e suas marcas de CPU. Com base nisso, desejo calcular dinamicamente as estatísticas de mediana e quartil.

Por exemplo, eu tenho uma tabela que parece

Name                        Count   Marks
i7-5820k 3,3 GHz 6 cores    11      12,996
i7-950 3,1 GHz 4 cores      4       5595
i7-3820 3,6 GHz 4 cores     7       8998
i5-3570k 3,4 GHz 4 cores    1       7153

O que eu quero fazer com os dados é contar as marcas da primeira linha 11 vezes, a segunda 4 vezes e assim por diante.

No momento, isso é trabalhado no Google Spreadsheets, mas acho que uma função semelhante deve estar disponível na maioria dos aplicativos de planilhas.

    
por Gnutt 14.08.2017 / 09:57

2 respostas

3

Matemática à parte, você pode usar a seguinte matriz de fórmulas :

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

Ctrl Deslocar Entrar

Notas:

  • IF(COLUMN(A:Z)<=B2:B5,C2:C5) gera uma matriz 2D de 4 rows, 26 columns , em que cada linha repete a célula na coluna C quantas vezes forem especificadas na célula da coluna B; as entradas restantes na linha são FALSE .

  • A função MEDIAN ignora as FALSE células e avaliará as entradas reais na matriz 2D gerada.

por 14.08.2017 / 21:12
0

O Excel tem uma função QUARTILE () que você pode usar. Mas seu conjunto de dados é pequeno o suficiente para que você possa obter a resposta quase por inspeção.

Primeiro, mova a linha com os processadores i7-950 para o final da lista. Existem 23 CPUs no total, então a mediana é a pontuação do 11.5º CPU classificado. Da mesma forma, o primeiro quartil é a pontuação da CPU com classificação de 5,75ª.

No seu caso, essas duas respostas são 8998. Isso é um pouco estranho, mas tem a ver com a distribuição de seus dados. Tanto o primeiro quanto o segundo quartil caem no mesmo "escaninho". Imagine se todos nos EUA pesassem 150 libras. Então, o peso mediano e todos os% serão de 150 libras.

Você poderia argumentar que os valores do quartil e da mediana caem entre os pontos de dados e, em seguida, interpolar entre os pontos de dados. Então você calcularia o quartil como sendo 3/4 do caminho entre 5595 e 8998. E a mediana como meio entre 8998 e 12.996.

Eu recebo 8197,25 e 10.997.

Para ver o que a função QUARTILE () pensa, crie uma coluna com 11 12,996, 7 8998, 1 7153 e 4 5595s.

Em seguida, use QUARTILE (intervalo, 1) e QUARTILE (intervalo, 2) para calcular o primeiro quartil e a mediana. Aqui "range" é a lista de 23 marcas.

EDIT: a interpolação não é exatamente kosher aqui porque as pontuações da CPU são todas exatas e não uma média de uma série de pontuações. Eu Penso . Presumo que você tenha consultado os valores publicados das pontuações de referência para cada CPU.

Não sei o que aconteceria se você realmente executasse o benchmark em cada CPU. O mesmo tipo de CPU produziria uma pontuação idêntica ou haveria uma série de pontuações? Se houvesse alguma variação nas pontuações para CPUs idênticas (talvez devido à temperatura ou a ??) então a interpolação seria justificada, eu acho.

Comentários são bem vindos aqui.

    
por 14.08.2017 / 15:43