|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
Добрый день! Подскажите пожалуйста, существует ли возможность с помощью функций DAX в PowerPivot создать формулу, которая возвращала бы наиболее часто встречающееся (повторяющееся) в столбце значение (число)? Непосредственно в Excel эту задачу можно решить с помощью функций МОДА.ОДН (МОДА) и МОДА.НСК. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2014, 12:34 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
Aleks_08, Distinctcount ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2014, 21:04 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
100ts, поясните как Вы сможете с функцией Distinctcount возвратить (определить) наиболее часто повторяющееся в столбце число? Ведь эта функция возвращает (подсчитывает) количество уникальных значений в столбце. Или Вы используете ее совместно с другими функциями для получения соответствующего результата? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2014, 09:21 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
Aleks_08, Если вы отложите в строках свой столбец, а в области значений будет distinctcount этого столбца, нет? Не то? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2014, 18:01 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
100ts, мне необходима мера, которая создается с помощью функций DAX в окне PowerPivot. Выражения мер в PowerPivotот ображаются в области вычисления его окна. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.05.2014, 19:57 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
Там, откуда берете данные для data model, сагрегируйте поле, что вам нужно, получаете поле с уникальными значениями, импортируйте его в data model, свяжите с первоначальным, и на стороне One сделайте вычисляемый столбец с distinctcount к стороне Many, только тогда через функцию RELATED, нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2014, 01:53 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
=COUNTROWS(RELATEDTABLE('fact_tbl')) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2014, 08:20 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
100ts, Здравствуйте. В общем смотрите что мне нужно. Мне нужно лишь одно значение (наиболее часто повторяющееся число), которое отражено в мере, а не в вычисляемых столбцах, из них конечно можно извлечь нужное число в меру, но при фильтрации таблицы результат в столбцах, а соответственно и в мере будет неверным. Вот, к примеру, формула к Вашей таблице для создания меры: =CALCULATE(MAX([value]);FILTER('dim_1_tbl';[CalculatedColumn1]=MAX([CalculatedColumn1]))) , но если мы отфильтруем таблицу fact_tbl - уберем строки, содержащие число 2, то значения во второй таблице dim_1_tbl не изменятся и результат соответственно будет неверным. В прикрепленном к данному сообщению файле содержится подобная таблица, но все сделано на одном листе (в одной таблице), только вот при ее фильтрации результат становится тоже не верным. Пример: В таблице содержится 3 столбца: столбец №, столбец Column1, вычисляемый столбец Column2 и мера A1, в которой отражен конечный результат (наиболее часто повторяющееся число в столбце Column1). Если данная таблица не отфильтрована, т. е. содержит все свои свои строки, то результат в мере A1 отражается верный. Но если мы, предположим, отфильтруем столбец № (уберем из таблицы две строки 1 и 2, в которых в столбце Column1 содержатся двойки, а в столбце Column2 содержатся тройки), то результат останется неизменным, а именно неверным, поскольку в столбце Column2 в четвертой строке таблицы осталось число 3 (если бы вычисляемые столбцы в PowerPivot производили бы вычисления и при фильтрации таблицы, то тогда число 3 поменялось бы на число 1, поскольку в столбце Column1 в четвертой строке таблицы осталось число 2, и результат был бы верный). Смотрите прикрепленный файл Excel, там будет более понятнее, чем здесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2014, 19:25 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
Есть также еще один вариант, но он ограниченный. Можно воспользоваться статистическими и логическими функциями с функцией фильтра, вот пример формулы: =IF(CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=0))>CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=1))&&CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=2))&&CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=3))&&CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=4));0;IF(CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=1))>CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=2))&&CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=3))&&CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=4));1;IF(CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=2))>CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=3))&&CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=4));2;IF(CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=3))>CALCULATE(COUNT([Column1]);FILTER('Table';[Column1]=4));3;4)))) Данная формула рассчитана на имеющиеся в столбце Column1 пять разных чисел (0, 1, 2, 3, 4), если расчет увеличивать на большее количество чисел, то объем формулы соответственно тоже будет увеличиваться, что скажется на производительности вычисления PowerPivot, тем более, что таких столбцов в таблице может быть не один и не два, а более. Также, если мне не изменяет память, в DAX поддерживается до 30 вложений формул, тем самым подобная формула может рассчитать примерно не более 30 разных чисел, а если количество разных чисел достигает в столбце 50 и более? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2014, 21:05 |
|
Аналог функции МОДА.ОДН (МОДА) в функциях DAX PowerPivot
|
|||
---|---|---|---|
#18+
Здравствуйте! Выражаю всем большое спасибо за оказанное внимание и помощь. Вопрос был решен. Формула для определения наиболее часто повторяющегося в столбце числа (для меры) следующая. =MINX(TOPN(1;ADDCOLUMNS(VALUES(Table[Column1]);"Frequency";CALCULATE(COUNT([Column1])));[Frequency];0);[Column1]) Формула вычисляет наиболее часто повторяющееся в столбце минимальное число. Если в формуле MINX поменять на MAXX, то она буде вычислять наиболее часто повторяющееся в столбце максимальное число. Формула функционирует также с учетом фильтрации таблицы (в чем и была, к стати говоря, проблема). ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2014, 12:30 |
|
|
start [/forum/topic.php?fid=61&msg=38644725&tid=2174018]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 309ms |
total: | 427ms |
0 / 0 |