Разная агрегация для разных измерений.

Автор haltol, 03 июля 2018, 01:22:04

« назад - далее »

haltol

Доброго дня.

Необходимо рассчитывать среднесписочную. Есть несколько измерений, для всех измерений кроме месяц, год нужно делать Sum. А для измерений  месяц, год AVG.

admin

Привет,
можно пример данных в табличном виде с желаемым результатом?

haltol

Табличка здесь.
https://share.rosinter.ru/owncloud/public.php?service=files&t=0cf69dd8619f30b9e9cced8fbd731fec

Есть Location
Административно-хозяйственное Управление
2017   Jan
srdSp2 = 2.451612903

2017   Feb
3.451612903

2017   Mar
4.129032258


2017   1Q
(
2.451612903
+
3.451612903
+
4.129032258
) / кол-во месяцев

3.344086022

Как то так



admin

Привет.
в каком виде/объекте требуется вывод результата?

[smg id=87 Width=450]

В Qlik Sense аналогично.

haltol

#4
Спасибо именно так и делал,

avg({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} Aggr(sum({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} [srdSp2]), Month,Year,Location))

но Location не складывается. А тоже дает среднее. А мне нужно, что бы по всем измерениям кроме Month,Year - было суммирование.



Когда убираю Location из Aggr, то отдельно по ним нету итогов. Но общий итог за период корректный.
avg({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} Aggr(sum({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} [srdSp2]), Month,Year))


haltol

Так формала выглядит в MS Analisys

IIF([Период].currentmember.level is [Период].Levels(1),

round( ([Measures].[Srd Sp2] /
COUNT(Descendants([Период].currentmember,[Период].levels(3)))),2),

(IIF([Период].currentmember.level is [Период].Levels(2),

round(([Measures].[Srd Sp2] /
COUNT(Descendants([Период].currentmember,[Период].levels(3)))),2),

(IIF([Период].currentmember.level is [Период].Levels(0),

round(([Measures].[Srd Sp2] /
COUNT(Descendants([Период].currentmember,[Период].levels(3)))),2),

round([Measures].[Srd Sp2],2))))))

admin

В настройках меры выберите опцию для итогов. У вас он считает по выражению, а если выбрать Sum то будет складывать строки.

haltol

Извините, а Sence - это можно? Где это ставится?

haltol

А вот накрапал. Вроде корректно считает.

Sum({<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>} [srdSp2])
/
Count(DISTINCT {<[Year] = {$(=max([Year]))},[Режим] = {'Текущий'}>}  Month)

admin

Цитата: haltol от 04 июля  2018, 09:21:37  
Извините, а Sence - это можно? Где это ставится?
В опциях меры - Функция итоговых значений

haltol


Яндекс.Метрика