Como obter a média dos valores M mais altos nas células N?

0

Eu tenho uma planilha com valores em uma matriz com várias linhas. Para cada linha, tenho números N. Eu quero calcular a média dos valores M maiores da linha. Com M < N. Existe uma função comum para fazer isso?

Se não houver tal função, eu suponho que posso adicioná-la usando os plugins python para gnumeric ou o plugin básico para o libreoffice.

    
por Daniel Hernández 28.06.2013 / 23:58

1 resposta

1

OK, se os dados numéricos de dados estiverem em linhas em Sheet1 , insira seu valor M em Sheet2!M1 e digite

=AVERAGE(LARGE(Sheet1!1:1, ROW(INDIRECT("1:"&M$1))))

em Sheet2!A1 . (Se os dados estiverem apenas em, por exemplo, Colunas G a Z , altere Sheet1!1:1 para Sheet1!G1:Z1 .) Pressione Ctrl + Deslocamento + < kbd> Digite para criar uma fórmula de matriz. Arraste quantas linhas precisar e você deve terminar.

Explicação:

  • & é o operador de concatenação de strings no Excel (e, pelo que ouvi, o Libre Office Calc é muito semelhante ao Excel), assim, se Sheet2!M1 for, digamos, 17, então "1:"&M$1 se tornará o valor da string "1:17" .
  • INDIRECT("1:17") é a região que compreende a linha 1 até a linha 17 e
  • ROW() disso é o array {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17} .
    Este é um truque para criar um valor de matriz especificado por dados de tempo de execução.
  • LARGE(Sheet1!1:1, {1…17}) é a matriz { LARGE(Sheet1!1:1,1), LARGE(Sheet1!1:1,2), LARGE(Sheet1!1:1,3), …} , que é o maior membro de Sheet1!1:1 , o segundo maior,… e assim por diante, até o dia 17.

Obrigado ao teylyn, cuja resposta ao pergunta semelhante eu usei para inspiração.

    
por 29.06.2013 / 21:58