Страницы: 1
RSS
PQ. Самый быстрый метод расчета нарастающего итога.
 
Добрый день.
Может кто разбирал данную проблему и сможет подсказать.
Интересует самый оптимальный метод расчета (самый быстрый) нарастающего итога в PQ.
Я использую List.Sum(List.Range(list_zaps, 0, [Индекс])).
Есть иные методы, которые позволят ускорить вычисление?
Спасибо.
 
Neostt,
Код
let
  data = Table.Repeat ( #table ( { "clmn_1", "clmn_2", "clmn_3", "clmn_4", "value" }, { { "aaaaa", "bbbbb", "ccccc", "ddddd", 5 } } ), 100000 ),
  recs = List.Buffer ( Table.ToRecords ( data ) ),
  gen = List.Generate (
    () => [ k = 0, cumm_s = recs{k}[value] ],
    ( x ) => x[k] < List.Count ( recs ),
    ( x ) => [ k = x[k] + 1, cumm_s = x[cumm_s] + recs{k}[value] ],
    ( x ) => Record.AddField ( recs{x[k]}, "cumm_value", x[cumm_s] )
  ),
  result = Table.FromRecords ( gen )
in
  result
 
surkenny, понял, спасибо.
Страницы: 1
Наверх