Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Поиск и вывод нужного значения по условию в Power Query
 
Отлично! Всё получилось, спасибо большое)
Поиск и вывод нужного значения по условию в Power Query
 
Прошу прощения, теперь понял. Не сообразил, что это как новый запрос. Насколько сложно сделать, чтобы результат был в том же запросе, но в новом столбце?
Поиск и вывод нужного значения по условию в Power Query
 
Что-то пошло не так :-(

Expression.Error: The field 'Bonus' already exists in the record.
Details:
   Name=Bonus
   Value=

если изменить название Bonus на Bonus_, то таблица выглядит так:
Изменено: Dmitry7 - 14.10.2024 13:00:08
Поиск и вывод нужного значения по условию в Power Query
 
Добрый день.

Прошу помощи с Power Query, нужно вывести значение "Bonus" в запросе "Layers" по следующим условиям:

если значение "Target" меньше 1, нужно сравнить значение "Actual" с целевыми значениями "Actual" из "Layers" и вывести соответствующее ему значение "Bonus":
на примере KPI 1 (Country AA). "Target" меньше 1, сравниваем "Actual" с целевыми значениями "Actual" из "Layers":
if [Actual] (0.985) >= [Actual] 0.97 then [Bonus] (1) else
if [Actual] (0.985) >= [Actual] 0.965 then [Bonus] (0.7) else
if [Actual] (0.985) >= [Actual] 0.96 then [Bonus] (0.6) else
if [Actual] (0.985) >= [Actual] 0.955 then [Bonus] (0.5) else
null
результат [Bonus] в данном случае 1

если значение "Target" больше 1, нужно сравнить значение "Index" с целевыми значениями "Index" из "Layers" и вывести соответствующее ему значение "Bonus":
на примере KPI 2 (Country AA). "Target" больше 1, сравниваем "Index" с целевыми значениями "Index" из "Table":
if [Index] (1.005) >= 1 then [Bonus] (0.02) else
if [Index] (1.005) >= .99 then [Bonus] (0.015) else
if [Index] (1.005) >= .98 then [Bonus] (0.01) else
if [Index] (1.005) >= .97 then [Bonus] (0.005) else
null
результат [Bonus] в данном случае 0.002

Заранее спасибо.
Power Query, условия в двух таблицах
 
AlienSx, большое спасибо за помощь. На тестовых и на реальных данных считает всё корректно, только на объеме в 3,5 млн строк результата ждать около 10 минут (csv-файл на локальном диске), но это ОК.
Есть вопрос по этапу с сортировкой, данный подход может отобразить некорректный уровень, если на втором шаге (phase 02) даты (Period) между таблицами совпадают не по всем периодам. Например, в dim_condition_by_period есть периоды, которых нет в fct_table_performance и наоборот. Как подобной ошибки можно избежать?
Power Query, условия в двух таблицах
 
AlienSx, добрый день. Да, на приложенных, тестовых данных. Я предыдущем сообщении как раз приложил скриншот, где видно, что на пером этапе уровень присваивается тем каналам, которых нет в условии.
Power Query, условия в двух таблицах
 
AlienSx, добрый день.

Результат первого шага (phase_01) некорректный, так как в первом условии только при соблюдении сразу двух условий (Customer 3 и канал 5 или 10) должен присваиваться уровень Level. А сейчас на первом шаге всем каналам (15 и 20, которых нет в таблице dim_condition_by_channel) Customer 3 присвоены уровни.
Power Query, условия в двух таблицах
 
AlienSx, похоже на правду), как проверю на реальном датасете, напишу результат) спасибо!
Power Query, условия в двух таблицах
 
Может кто-то предложит элегантное и быстрое решение при помощи функции.  
Power Query, условия в двух таблицах
 

Добрый день.

Нужно на основе условий из двух таблиц (dim_condition_by_channel и dim_condition_by_period) отобразить соответствующий уровень (level) по каждому клиенту в таблице фактов (fct_table_performance) в одном столбце.

Первый шаг это джойн таблицы fct_table_performance с  dim_condition_by_channel по столбцам Customer и Channel, затем вычисление уровня (level) по логике, чтобы performance был больше или равен value этого уровня, но меньше value следующего уровня. Как пример, результат первого шага:

PeriodCustomerChannelPerformanceLevel
January   2020Customer 351Level 1
January   2020Customer 3105Level 1
February   2020Customer 353890Level 4
February   2020Customer 3103988Level 4
March   2020Customer 353693Level 4
March   2020Customer 3101450Level 4
April   2020Customer 351854Level 4
April   2020Customer 3101908Level 4
May   2020Customer 3544Level 2
May   2020Customer 3102799Level 4

Второй шаг, это по всем оставшимся записям, которые не удовлетворяют первому условию, сделать джойн таблицы fct_table_performance с  dim_condition_by_period по столбцам Customer и Period и произвести такую же операцию по вычислению уровня.

Сравнение двух списков в Power Query
 
Alex, проверил, все работает корректно и быстро. Спасибо!
Сравнение двух списков в Power Query
 
Всем ОГРОМНОЕ спасибо за время и предложенные варианты решения, но в варианте от Alex я не вижу ошибок, всё считается корректно, чуть позже проверю на реальном источнике.
Сравнение двух списков в Power Query
 
Цитата
Как  вариант - сделать каждый список как таблицу
Если развернуть списки по каждому клиенту, это не вариант, так как записей в рабочей базе будет за 1.5 млн. Поэтому мне и кажется, что лучше сгруппировать все SKU и сравнить готовые списки между собой.
Сравнение двух списков в Power Query
 
Добрый день.

Есть целевой список SKU по категориям, которые должен закупить клиент за каждый месяц (данные на листе Target_Sheet). Есть таблица с фактическими закупками всех SKU (данные на листе Actual_Sheet). Задача – сравнить на уровне клиента закупил ли он хотя бы 80% SKU от целевого списка, если да, то в столбце вывести 1, если нет, то 0. Как мне кажется, оптимальным будет сравнить два списка (данные в PQ я подготовил), но нужна помощь с дальнейшими сравнением списков и калькуляцией итогового результата.

Преобразование диапазона дат в столбцы в PQ
 
Отлично, спасибо большое!
Преобразование диапазона дат в столбцы в PQ
 
Спасибо!

Если столбец till date не заполнен, значит расчёт ограничивается текущей датой, так как сейчас окт-23, поэтому так сделал в примере. При незаполненном поле till date в ноя-23 должен быть еще один столбец 2023M11, в дек-23 - 2023М12 и т.д.
Преобразование диапазона дат в столбцы в PQ
 
Добрый день. Нужна помощь, никак не могу найти быстрый и оптимальный способ.

Нужно на постоянной основе преобразовывать все даты между двух периодов (from и till) в определённый формат (пример во вложении, то, что требуется получить - отметил цветом) и с обязательным разнесением по отдельным столбцам.
Сводная диаграмма
 
Хорошо, тема "Создание сводной диаграммы" так подойдёт?
Изменено: Dmitry7 - 04.04.2021 21:51:19
Сводная диаграмма
 
Здравствуйте, нужна помощь в решении задачи)

Нужно сделать сводную диаграмму с фильтром по столбцу "Код", тип диаграммы "с группировкой", но при этом сгруппировать столбцы нужно по неделям: сначала все первые недели 2019, 2020 и 2021 года, потом все вторые недели и т.д.
Как это сделать не меняя текущую структуру таблицу?
Ограничить расчёт рейтинга до определённого места
 
Спасибо
Ограничить расчёт рейтинга до определённого места
 
Добрый день.
Как ограничить расчёт рейтинга до определённого места? Например, не рассчитывать рейтинг с 11 места и далее, только с 1 по 10. Как изменить формулу:
Код
=ЕСЛИ(A2<>0;СЧЁТ(1/ЧАСТОТА(($G$2:$G$22>G2)*G$2:G$22;G$2:G$22));"") 
Страницы: 1
Наверх