Страницы: 1
RSS
PowerPivot Ранжир по отфильтрованным данным (в контексте суток), Расчёт RANKX привязать к суткам сквозным образом по всё объектам
 
Здравствуйте!
Делаю ранжир по столбцу Пр с выборкой по суткам такой формулой:
Код
=RANKX (
   FILTER ('Table';
      [Время (Год)] = 'Table'[Время (Год)] && [Время (День)] =  'Table'[Время (День)]
   );
   'Table'[Пр];
   ;
   ASC;Dense
)

Но считает она по всей совокупности. Как прикрутить контекст суток?

 
Вы бы показали какой результат ожидаете. А то лично я не вижу где там вообще можно ранжировать в разрезе суток - там за одни сутки везде одно значение.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
vladjuha, мера:
Код
Ранж_мед :=
RANKX (
    ALL ( 'Table'[SubObj]; 'Table'[Obj] );
    CALCULATE ( MEDIAN ( [Ранж] ) );
    ;
    ASC;
    DENSE
)

P.S. "Контекст суток" - это что?) Если значения за месяц, то нужно что посчитать?) Средний ранг за каждый день?
В общем, при детализации до дня, как в вашей сводной, ранжироваться будут значения всех категорий/подкатегорий внутри дня. Думаю, именно это и нужно.
Изменено: surkenny - 11.11.2021 08:36:18
 
Применительно к 1,2,3 сен: всего значений за каждые сутки пять [1  3  45  47  99].
Ещё показательны 4,5 сен: там набор из шести [1  3  10  40  47  99]
А моя простая формула считает по всему многообразию (т.е. за все сутки) - семь уникальных:  [1  3  10  40  45  47  99].
В приложении желаемый результат.
 
vladjuha, Вы мою меру-то попробовали?:)
В разрезе месяца будет выполнено ранжирование медианного значения за месяц для каждой категории/подкатегории.
В разрезе дня аналогично. Соответствует желаемому результату:)
 
surkenny, да, спасибо, мерой результат, что надо!
А как, для общего развития, понимания концепции, вычисление для столбца сделать, чтобы по каждой строке результат был виден (без MEDIAN)? Собсно как я пытался.
Изменено: vladjuha - 11.11.2021 08:55:03
 
vladjuha, например так:
Код
ранж =
VAR curDay = 'Table'[Время (День)]
VAR curYear = 'Table'[Время (Год)]
VAR data =
    FILTER (
        'Table';
        'Table'[Время (День)] = curDay
            && 'Table'[Время (Год)] = curYear
    )
VAR result =
    RANKX ( data; 'Table'[Пр];; ASC; DENSE )
RETURN
    result

Но результат не совпадет с тем, что сообщении #4, так как для некоторых категорий/подкатегорий есть разные значения в один день.
Изменено: surkenny - 11.11.2021 09:37:40
 
Вон оно как. Спасибо!
Страницы: 1
Наверх