средний ЕСЛИ в Excel - PullRequest
       22

средний ЕСЛИ в Excel

0 голосов
/ 14 октября 2019

ищет аналогичный параметр для условного среднего: = AVERAGEIF (A: A, A2, B: B), но на этот раз для Median в Excel. Я хочу сгенерировать Медиану для идентификаторов в столбце 1 для большого количества субъектов

спасибо

Ответы [ 2 ]

2 голосов
/ 14 октября 2019

Попробуйте эту формулу:

=MEDIAN(IF(A:A=A2,B:B))

Это формула массива, что означает, что вам нужно будет ввести ее, нажав Ctrl + Shift + Enter.

1 голос
/ 14 октября 2019

Просто для удовольствия, вот другое решение, только для образовательных целей.

Гораздо больше ручного, но избегает формулы массива CSE.

enter image description here

=IF(
    ISODD(COUNTIFS($A$2:$A$9,$D2)),
    SUMPRODUCT(
        SMALL($B$2:$B$9*($A$2:$A$9=$D2), (COUNT($B$2:$B$9)-COUNTIFS($A$2:$A$9,$D2))+(COUNTIFS($A$2:$A$9,$D2)+1)/2)
    ),
    SUMPRODUCT(
        (
            SMALL($B$2:$B$9*($A$2:$A$9=$D2), (COUNT($B$2:$B$9)-COUNTIFS($A$2:$A$9,$D2))+(COUNTIFS($A$2:$A$9,$D2)/2))
            +
            SMALL($B$2:$B$9*($A$2:$A$9=$D2), (COUNT($B$2:$B$9)-COUNTIFS($A$2:$A$9,$D2))+(COUNTIFS($A$2:$A$9,$D2)/2)+1)
        )/2
    )
)

IF проверяет, существует ли нечетное число значений в интересующей нас группе, поскольку медиана вычисляется по-разному для нечетного и четного числа значений.

Мы можем использовать SMALL, чтобы найти n-е наименьшее число. Мы можем использовать $B$2:$B$9*($A$2:$A$9=$D2), чтобы установить все значения в группах, которые нам не интересны, в ноль.

Чтобы получить количество значений, а не в интересующей нас группе, мы можем использовать COUNT($B$2:$B$9)-COUNTIFS($A$2:$A$9,$D2).

Нам просто нужно добавить половину количества значений в интересующей нас группе: COUNTIFS($A$2:$A$9,$D2)/2.

Если в группе есть нечетное количество значений, мы находимсяинтересует, что с нами сделано. Однако, если есть четное количество значений, мы должны взять среднее из двух средних чисел. Это делается путем добавления этой формулы SMALL к другой формуле SMALL с n + 1: (COUNTIFS($A$2:$A$9,$D2)/2)+1 и делением на 2.

Поскольку мы имеем дело с массивами, нам нужно обернуть эти формулы в SUMPRODUCTS.

Как я уже сказал, вам, вероятно, не стоит использовать это решение, поскольку оно значительно сложнее, чем ответ М. Шалка, но я все равно поделюсь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...