Я не уверен в наилучшем способе сформулировать этот вопрос прямо сейчас, поэтому я буду использовать пример с использованием случайных чисел. Я начинаю со значений, присвоенных идентификаторам, так что каждый идентификатор может быть n = 1, n = 2 и т. Д.
ID Value
1 1235
1 326
1 567
2 768
2 646
3 4367
3 346
3 35
4 436
5 3467
5 46
6 3467
6 3532
6 457
7 3463
7 3463
7 9328
7 2498
и т.д
Я хочу вычислить в Excel / Calc среднее и SD, чтобы значения были выровнены должным образом (в идеале это были бы объединенные ячейки), учитывая его одну, две, три ... и т. Д. Ячейки ввода, одну ячейку вывода.
Пример скриншота:
Что я хочу получить. AVG и SD означают правильные значения для (случайных) данных; таким образом, AVG и SD правильно выровнены] 1
Я хочу, то есть автоматизированный способ расчета среднего и SD с учетом разных n, чтобы он был правильно выровнен / отформатирован.
Должен быть простой способ сделать это, но сейчас я ничего не понимаю. -_-
Буду признателен за любое предложение.
Это не совсем то, что вы просили, но я бы использовал сводную таблицу:
(Я изменил заголовок первого столбца на ID и отформатировал второй и третий столбцы, чтобы показывать только два десятичных знака, в противном случае это только то, что показано в PivotTable Builder.)
Вы можете получить то, что просили, разместив:
в С2 и:
в D2 и заполнение обеих колонок вниз. Внешний IF в каждой формуле должен помещать значение только в первую строку, содержащую определенный идентификатор. Остальная часть формулы C2 должна быть простой, AVERAGEIF усредняет числа, для которых верны определенные критерии. В этом случае он просматривает первый столбец, выбирает числа с тем же значением, что и значение в текущей строке в первом столбце, а затем усредняет соответствующие числа во втором столбце.
К сожалению, нет «STDEVIF» (по крайней мере, в Excel 2011 на Mac, возможно, есть в какой-либо программе для работы с электронными таблицами, которую вы используете. Если это так, просто используйте его вместо AVERAGE в формуле C2), поэтому вы должны быть хитрыми :-). Подход заключается в том, чтобы найти диапазон ячеек, для которого требуется стандартное отклонение, создать ссылку на эти ячейки, а затем передать эту ссылку в STDEV.P. Диапазон строится путем нахождения первой строки в столбце 1 с тем же значением, что и значение в текущей строке в столбце 1, затем нахождения последнейстрока в столбце 1 с тем же значением, что и значение в текущей строке в столбце 1. Эти два значения очерчивают верхнюю и нижнюю часть поддиапазона столбца 1, который вы хотите использовать, поэтому создайте ссылку на стиль R1C1 в строке, используйте INDIRECT чтобы превратить его в реальную ссылку, а затем передать ее в STDEV.P. Просто! :-) Хорошо, это немного отвратительно, но это работает.
источник
В Excel нет такой встроенной функциональности. Вам нужно будет использовать промежуточные итоги или сводные таблицы, которые не выполняют то, что вам нужно.
Для построения таблицы с формулами используйте следующие две функции.
В С2 поставь
В D2 поставить и войти нажатием
ctrl+shift+enter
Затем скопируйте эти формулы вниз
IF (A2 <> A1 ... в начале говорит, что показывает только то, что столбец A отличается между этой строкой и приведенной выше.
Averageif работает точно так, как вы думаете.
Столбец D - это формула массива, поэтому сначала он вводится и выполняет оператор if для каждой ячейки в диапазоне, и он будет возвращать массиву что-то вроде (1,14,13,3, FALSE, FALSE ...) для каждой ячейки и затем рассчитывает стандартное отклонение, которое должно игнорировать значения FALSE.
Этот метод предполагает, что данные отсортированы по идентификатору. Среднее и стандартное вычисление Dev были бы правильными, если бы они не были отсортированы, но они будут отображаться при каждом изменении идентификатора, а не только при первом.
источник