![](https://cdn.wiki-base.com/4040326/excel_formula_longest_winning_streak__2.png.webp)
Обща формула
(=MAX(FREQUENCY(IF(result="w",id),IF(result="w",0,id))))
Обобщение
За да изчислите най-дългата печеливша серия, можете да използвате формула за масив, базирана на честотната функция.
Забележка: ЧЕСТОТА трябва да се въведе като формула на масив, като се използва Control + Shift + Enter
Обяснение
Това е сложна формула за разбиране и изисква да имате числов идентификатор за всяко съвпадение и всички съвпадения да бъдат сортирани по идентификатор.
Те са ключови в разбирането как FREQUENCY събира числа в "кошчета". Всеки бин представлява горна граница и генерира брой на всички числа в набора от данни, които са по-малки или равни на горната граница и по-големи от предишния номер на бин.
Същността на тази формула е, че тя създава нов кош в края на всяка печеливша серия, използвайки идентификатора на последващата загуба. Всички останали кошчета са създадени като нула. Практическият ефект е броят на поредните печалби във всяка кошче.
Вътре в честотата масивът от данни се генерира с това:
IF(result="w",id)
Което създава масив като този:
(1; FALSE; 3; 4; 5; FALSE; 7; 8; 9; 10; 11; FALSE; FALSE; FALSE)
Забележете, че само победи влизат в този масив.
Масивът bins се генерира с:
IF(result="w",0,id)
Което създава масив като този:
(0; 2; 0; 0; 0; 6; 0; 0; 0; 0; 0; 12; 13; 14)
Само загубите влизат в този масив като ненулеви стойности и те се превръщат във функционалните кутии, които печелят. Победите се превеждат като нули и всъщност не събират никакви числа от масива от данни, тъй като FALSE стойностите се игнорират.
С масива от данни и масивите на контейнерите по-горе, честотата връща масив от броя на всеки контейнер. Чрез обвиване на функцията MAX около този резултат от масив, получаваме най-високия брой, който е най-дългата печеливша серия.
След това функцията MAX връща максималния брой.
С помощна колона
Ако не харесвате изисканите формули за панталони, които изискват пълно обяснение на страницата, за да разберете, винаги можете да използвате помощна колона с проста формула и да приложите MAX към резултатите. В този случай можете да създадете текущ брой печалби с тази формула в D4, копирана надолу в колоната:
=IF(C4="w",D3+1,0)