Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Составление cross sale на power bi, Фильтрация в power bi
 
Всем привет! Помню мне однажды очень помогли на этом форуме с задачей по excel. Сейчас у меня задача по Power bi достаточно интересная.
Power bi же почти excel :) Может найдутся тут профессионалы.

Задача сама по себе интересная и мне кажется пригодится многим.

Конечная задача: сделать визуализацию cross sale. Подксказать менеджерам, что ещё предложить клиенту, когда он оформляет заказ.
Есть две таблицы:
1. transaction_table - данные о покупках.
transaction_id (ключ) - идентификатор транзакции,
сlient_id
сlient_segment - информация из какого сегмента бизнеса клиент (магазин, ресторах, офис,... всего 40 штук уникальных значений)

2. item_table - данные о купленных товарах. Среди них,
transaction_id - для связки
item_id
item_category - категория, к которой принадлежит товар, который купили
summ - стоимость товаров

Итого нужно следующее: пользователь отчета выбирает в фильтре конкретный client_id и у него автоматически показываются все категории товаров, которые которые покупают все клиенты из его категории, за исключением тех товаров, которые он сам уже купил.

Пока я просто не могу сделать фильтр, который покажет все покупки клиентов в категории :(
 
Цитата
irkastar написал: Есть две таблицы:
Где они есть?
Вы уж если хотите бесплатной помощи с непростой задачей потрудитесь хотя бы примерчик слепить с исходными данными и желаемым результатом.

Просто лично у меня в голове Vertipaq не установлен и вертеть в памяти виртуальные таблицы как Power Pivot я не умею. С виду задача не суперсложная, но исходные данные все таки нужны.
Вот горшок пустой, он предмет простой...
 
Вот ссылка на Power BI
https://yadi.sk/d/o0mS6sfW3ZoLgB

Вот чисто на данные для этого примера
https://yadi.sk/i/LBFrHWze3ZoLif

Нужно чтобы при задании client_i (1), табличка ( 3 ) фильтровалась по client_type (2). Сейчас она фильтруется по client_id.
http://joxi.ru/J2b6wWkuXk4Yp2

Изменено: irkastar - 1 Авг 2018 17:58:04
 
Доброе время суток
Цитата
irkastar написал:
client_id и у него автоматически показываются все категории товаров, которые которые покупают все клиенты из его категории, за исключением тех товаров, которые он сам уже купил.
И какие сложности? Обычный EXCEPT двух таблиц списков, плюс, CONCATENATEX
Успехов.
 
Для диаграммы без EXCEPT
Успехов.
Изменено: Андрей VG - 2 Авг 2018 22:17:18
 
Спасибо за ответ. Но он некорректен, проверяю по цифрам не сходится. Или вы просто для примера размышлений привели его.
Решается другая задача.

Мера = IF(COUNTROWS('item')=0; CALCULATE(SUM('item'[Сумма по столбцу price]); ALL('order1'[client_id])); BLANK())

Не нужно брать все покупки клиента (определять были ли покупки у него COUNTROWS('item')=0)

Нужно скачала определить client_type по выбранному client_id и
потом уже по нефильтрованных данным посчитать сумму покупок всех client_type.


Уже ради спортивного интереса пытаюсь посчитать это с помощью объявления переменной.
Не получается. Выдает ошибки.


Мера 3 =
var TYPEclient = DISTINCT(order1[client_type])

CALCULATE(SUM('item'[Сумма по столбцу price]); FILTER(order1;order1[client_type] = TYPEclient))


Или я просто не знаю какую то магическую функцию Power bi, которая всё это автоматом считает.
Изменено: irkastar - 3 Авг 2018 12:22:30
 
Цитата
irkastar написал:
Не нужно брать все покупки клиента (определять были ли покупки у него COUNTROWS('item')=0)
Вы неверно рассматриваете контекст. Эта часть определяет была ли у выбранного client_id хотя бы одна покупка. А контекст в рамках графика - это конкретное наименование товара, например, "Средство для мытья посуды". То есть если клиент не покупал это средство, то нужно показать сумму клиентов, покупавших его.
Цитата
irkastar написал:
Но он некорректен, проверяю по цифрам не сходится
Не сходится сугубо из-за того, что для тех покупавших клиентов нет фильтра по категории клиента. Его нужно добавить, заменив ALL('order1'[client_id]) на правильную конструкцию, получив значение категории клиента для того выбранного client_id.
Например,
client_id = 2204142 категории клиентов 34053 купил 9 наименований товаров - неохваченных наименований 292, которые приобрели клиенты той же категории.
client_id = 2192690 категории клиентов 34053 купил 41 наименований товаров - неохваченных наименований 260, которые приобрели клиенты той же категории.
Всего наименований товаров 301, приобретённых клиентами категории 34053.
Для клиентов категории 24057 - всего 83 наименования.
Изменено: Андрей VG - 3 Авг 2018 14:07:05
Страницы: 1
Читают тему (гостей: 1)
Наверх