Подсчет повторяющихся вхождений в существующей таблице - PullRequest
0 голосов
/ 25 февраля 2019

У меня есть около 15 предметов, которые я хочу посчитать, сколько раз это повторяется за серию времени.Это выделено 1 в тот период времени.Согласно приложенному рисунку, синяя область - это данные, а желтый - результат, который я хочу получить.

Например, в случае 5 это повторяет текущую запись - 1 три раза, текущую запись - 2 два разаи т. д. Я также не хочу пересчитывать текущий элемент wekks дважды в соответствии с пунктом 14 наблюдения. Результаты, выделенные желтым цветом, рассчитаны вручную, и единственная альтернатива состоит в том, чтобы делать отдельные операторы IF, основываясь на моих знаниях ...

ПРИМЕР

enter image description here

Существует ли формула для этого автоматически?Я пытался работать с массивами и соответствующими элементами, чтобы проверить наличие повторов, но не могу его обработать.

Обновление для уточнения: В текущем происшествии 5 - появились задания 1, 6 и 15в Происшествии 4 (Повторяет Ток -1 или Происшествие 4 - три раза) Obs 5 и 8 возникли в Происшествии 3 (Повторяет Ток -2 или Происхождение 4 - два раза).(Происшествия - это просто моменты времени. Наблюдения могут быть за людьми, которые что-то наблюдали, когда что-то делали - количество раз не имеет значения, это просто истинный или ложный результат)Повторяет Current -3) или Occurrence 1 два раза (мой плохой, я указал только 1 раз, что могло вызвать путаницу).

Я бы хотел, чтобы формула прекратила поиск предыдущих вхождений, как только будет найдено следующее последнее.например, Obs 14 в Occurrence 3 должен перестать смотреть, как только он обнаружит повторение в Occurrence 2.

Ответы [ 2 ]

0 голосов
/ 27 февраля 2019

Чтобы расширить ответ Эдварда, я использовал следующую формулу в качестве промежуточной формулы:

=IF(AND(ISNUMBER(C7);C7=C8;C8=C9;C9=C10);"-3";IF(AND(ISNUMBER(C7);C7=C8;C8=C9);"-2";IF(AND(ISNUMBER(C7);C7=C8);"-1";"")))

Затем используйте Countif(R3:AF3;"-3"), чтобы подсчитать число -3.

Запустив ограничения Ifпри значении -3 и обратном направлении формула автоматически останавливается при обнаружении последнего совпадения.

0 голосов
/ 26 февраля 2019

Вы можете использовать промежуточные вычисленные ячейки, которые вы можете скрыть позже, если хотите.

Вставить 15 столбцов (1 для каждого наблюдения) между наблюдениями и повторениями.

В первой вставленной ячейкесоздайте формулу для отдельного повторного наблюдения:

=AND(ISNUMBER(B3),B3=B4)

т.е. чтобы быть подсчитанным как повтор, наблюдение должно быть числом И таким же, как и ячейка, расположенная непосредственно под ним.

Дублировать этоформула по горизонтали, поэтому она рассчитывается для всех 15 наблюдений.

Затем создайте формулу справа для подсчета совпадающих наблюдений

=COUNTIF(R3:AF3,TRUE)

Теперь дублируйте формулы вниз для всех вхождений.

Для current-2 вы можете ссылаться на ячейку непосредственно ниже и слева и дублировать ее поперек и вниз.

Для ясности я оставил ваш последний requiremnet, чтобы прекратить поиск после совпадениянайден.Для этого вам нужно будет расширить промежуточную формулу, чтобы учесть это.

Example calculation

...