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

Страницы: 1 2 3 След.
Поиск всех родителей в иерархии
 
Добрый день,

Помогите пожалуйста с кодом. Он вроде как работает, но не как надо.
Я хочу найти всех родителей для данного Child_Id:
делаю это так:
Код
let
    Source = TERGET_LIST,

    expandHierarchy = (table, iter) =>
        let
            joinedTable = Table.NestedJoin(table, {"Target Child_ID  LIST"}, HIERARCHY, {"Child_ID"}, "HIER_L" & Text.From(iter), JoinKind.Inner),
            Personnalisé = Table.ExpandTableColumn(joinedTable, "HIER_L" & Text.From(iter), {"Parent_Id", "Parent_Name"}, {"Id_parent_" & Text.From(iter + 1), "Parent_" & Text.From(iter + 1)})
        in
            Personnalisé,

    iterations = List.Generate(() => 0, each _ < 7 and Table.RowCount(expandHierarchy(Source, _)) > 0, each _ + 1),
    expandedTable = List.Accumulate(iterations, Source, (state, current) => expandHierarchy(state, current)),
    resultTable = if List.Count(iterations) > 0 then expandedTable else null
in
    resultTable


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

Спасибо за любую помощь.
Ранг с учетом даты для одинаковых значений
 
Цитата
bigorq написал:
Смотри два последних столбца.

Прикрепленные файлы
ранг_1.xlsx  (10.51 КБ)

Круто, спасибо большое.
Я бы не догадался.
Ранг с учетом даты для одинаковых значений
 
Добрый день.
Помогите с формулой пожалуйста.
Я сделал ранг по количеству продаж, чтобы место в ранге не перепрыгивалось,
Теперь для одинакового количества продаж я хочу учесть среднюю дату продаж и поставить выше тех у кого она раньше.
Если этой даты нет считать ее максимально поздней
Вручную я результат написал - но формулой мы с чатжпт не вывозим.

Спасибо за любой совет.
Хорошего дня!
Power Query задача по Parent-Child
 
Добрый день, мы тут с чатжпт не можем решить задачу.
У меня уже есть код, который из таблицы с Кодом Ребенка, Кодом Родителя, Именем Ребенка, Именем Родителя - возвращает колонку HighestParent
Я пытаюсь просто добавить колонку HighestParent-1
То есть если у меня код ребенка А а у его предков соответственно B-C-D-E, я хочу получить Е для HighestParent и D для HighestParent-1
А для D из предыдущего примера  Е для HighestParent и тоже E для HighestParent-1.

Файл с power query в приложении мой код:
Код
let
    Source = Hierarchy,
    ListEnfant = List.Buffer( Source[#"Id Compte enfant"] ),
    ListParentID = List.Buffer( Source[#"Id Compte parent"] ),

    fnAncetre =  (n as text) as text =>
        let
            PosOfParent = List.PositionOf( ListEnfant, n ),
            ParID = if PosOfParent >= 0 then ListParentID{PosOfParent} else null
         in
            if ParID = null then n else @fnAncetre(ParID),

    AncetreID = Table.AddColumn( Source, 
                                  "HighestParent", 
                                  each  fnAncetre( [#"Id Compte enfant"] ), 
                                  type text)
in
    AncetreID

Спасибо за любой совет.
Изменено: badzen - 10.03.2023 16:21:21
Разделить excel на файлы по значению, сохранив data validation, vba
 
Добрый день, использовал всегда python для разделения файлов, но тут он не справляется (скорее, я не знаю нужных библиотек)

Есть файл Cibl.xlsx, worksheet 'POURVU', умная таблица 'Tableau1'. нужно разделить файл по значению первой колонки A ('sector'), переименовав файл добавлением '_'&{sector}.
Это я могу сделать.
Но чтобы добавить data validation (определено для колонок B,C,D) тут я не могу. И вроде нашел как делать  - но метод не работает, так как в некоторых ячейках B,C,D уже есть выбранные данные и правило не копируется из-за этого (хотя это те же данные из списка).
Может подскажете как это обойти.
Пока я придумал скопировать изначальный файл столько раз сколько distinct values в secor, переименовать файл, а затем удалить для каждого несоответстующие строки, но питон уже первый файл считает 30 минут, видимо строки по одной удаляет из 800 000.
Спасибо
power query слияние если дубликаты
 
Цитата
New написал:
Код
    [URL=#]?[/URL]       1  2  3  4  5      let          Source = Excel.CurrentWorkbook(){[Name=  "Таблица1"  ]}[Content],          grp = Table.Group(Source, {  "Code"  }, {{  "temp"  , each Text.Combine([Outcome],  ", "  ), type text}})    in          grp   
 

Спасибо, очень круто!
power query слияние если дубликаты
 
Добрый день.

С моей задачей я справляюсь, добавляя колонку индекса и дополнительный сгруппированный запрос, но в результате очень долго все это считается. Поэтому посоветуйте пожалуйста опримальный способ.
Есть две колонки : VisitCode и Outcome
VisitCode должен быть в идеале без дублей, но как обычно - если несколько Outcome, некоторые коммерсы создают несколько визитов с разными outcome, в результате дубли есть.
Я хочу в этом случае  прописать несколько Outcome через запятую.
Cпасибо за любой совет.
DAX группы из 4х недель
 
Добрый вечер.
У меня вопрос с двумя уровнями сложности.
Первый относительно простой.
Сейчас у нас 43 неделя. Хочу создать в dax колонку - которая будет отсчитивать группы по 4 вниз - 43,42,41,40 - будут соответсвенно группой 11,  а 39,38,37,36 - группой 10 и т.д.

Второй уровень сложности - Хочу вывести график где продажи за последние четыре недели считая от недели по оси x сравниваются с предыдущей неделей (также являющейся группой из 4 недель) то есть (Продажи {43,42,41,40} / Продажи {42,41,40,39})-1 и так до 4ой недели.

Спасибо за любой совет
вопрос по арифметике : анализ накопительной суммы
 
Добрый день.

Прохожу туры собеседований по бизнес-аналитике. Дали на выходные тестовое задание - продажи (в каждой ячейке сумма за последние 12 месяцев) компании и конкурентов. Данные для 15  месяцев. Типа делай, что хочешь - покажи что умеешь.
Мне сначала показалось, что, имея накопительную сумму за 12 месяцев, можно выделить как-то один конкретный месяц, и сделать анализ уже по месяцам - найти какую-нибудь сезонность и т.д.
Но после первой попытки я прихожу к выводу что это не возможно так как:
M12 = m1+m2+...+m12 , M13 = m2+...+m13 и соответственно M13 - M12 = m13-m1  - то есть два неизвестных. Подтвердите пожалуйста, что выделить месяц из данных нельзя, и посоветуйте пожалуйста, что еще можно придумать с этими данными (я буду делать симпатичный power bi, очевидно, что есть какие-то подводные камни, так как на собеседовании говорили про R, Python, PCA, аб тесты - а для задания данные дают простые и мало)  Спасибо
DAX : сумма средних по условию
 
Пока придумал так, вроде считает:

UNC = SUMX(
   SUMMARIZE(
       'ALL',
       'ALL'[departement],
       'ALL'[YEAR],
       'ALL'[AF_UNC]
   ),
   'ALL'[AF_UNC]
)
DAX : сумма средних по условию
 
Добрый день.

Помогите пожалуйста составить Mesure в Dax.
У меня есть колонки: ГОД, Департамент, Возраст - для комбинации этих трех параметров расчитывается количество людей.
Но есть и Продажи - они расчитываются для Года и Департамента и дублируются для каждого Возраста.
Мне нужно получить сумму Продаж, не учитывая возраст

Пример прилагаю.
Спасибо
Изменено: badzen - 18.10.2022 12:35:06
СЧЕТЕСЛИ в определенном диапазоне таблицы
 
Добрый день.

Мне нужно посчитать в таблице, количество значений соответствующий условию (<1000)
Проблема в том что:
1. таблица выгружается автоматически каждый месяц и количество столбцов увеличивается на 1 каждый месяц.
2. Мне нужны все месяцы кроме последнего
3. Поля с цифрами - текстовые.

я сделал СЧЕТЕСЛИ и СМЕЩ - но стопорюсь на этапе "<"&1000 или "="&{"0";"10";"11"}

Помогите пожалуйста
Power Query неправильный self join
 
Спасибо я понял. Я искал ключ+текущий месяц по массиву ключ+предыдущий месяц соответственно получал значение за следующий месяц:
Cоответственно я переделываю поиск : ключ+предыдущий месяц в массиве ключ+текущий месяц.  8)
Power Query неправильный self join
 
Добрый день.
В Power Query пытаюсь получить в строке значения за предыдущий месяц для данного кода клиента.
Делаю Left Join к этой же таблице. Выдает мне очень странные значения - в примере например я выделил красным неверную строку. У меня саммые ранние значения за июнь и в строке за май я ожидаю null но Power Query выдает цифры.
Можете подсказать пожалуйста, где я облажался? Спасибо
Правильное применение функции к нескольким колонкам Power Query
 
Добрый день. Подскажите пожалуйста привильный синтаксис для прменения функции к нескльким колонкам. В моем примере функция (call_fn_tot_cumul) прменена к колонке [tab][DSP], возможно ли в этой же строчке прменить ее к [tab][MSL]? Спасибо

Код
let
    Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
    #"Type modifié" = Table.TransformColumnTypes(Source,{{"OneKey", type text}, {"DATE", type date}, {"TYPE", type text}, {"Nb", Int64.Type}}),
    #"Colonne dynamique" = Table.Pivot(#"Type modifié", List.Distinct(#"Type modifié"[TYPE]), "TYPE", "Nb", List.Sum),
    #"Valeur remplacée" = Table.ReplaceValue(#"Colonne dynamique",null,0,Replacer.ReplaceValue,{"OneKey", "DATE", "DSP", "MSL"}),
    #"Lignes triées" = Table.Sort(#"Valeur remplacée",{{"DATE", Order.Ascending}, {"OneKey", Order.Ascending}}),
    #"Année insérée" = Table.AddColumn(#"Lignes triées", "Année", each Date.Year([DATE]), Int64.Type),
    #"Lignes groupées" = Table.Group(#"Année insérée", {"OneKey", "Année"}, {{"tab", each _, type table [OneKey=text, DATE=date, DSP=nullable number, MSL=nullable number, Année=number]}}),
    call_fn_tot_cumul = Table.ReplaceValue(#"Lignes groupées",each [tab],each fn_tot_cumul([tab],[tab][DSP],"Cumul_det_DSP"),Replacer.ReplaceValue,{"tab"})[[tab]],
    #"tab développé" = Table.ExpandTableColumn(call_fn_tot_cumul, "tab", {"OneKey", "DATE", "DSP", "MSL", "Année", "Cumul_det_DSP"}, {"OneKey", "DATE", "DSP", "MSL", "Année", "Cumul_det_DSP"})
in
    #"tab développé"
Изменено: badzen - 03.10.2022 21:03:44
[ Закрыто] Power Query, Нарастающий итог с несколькими критериями (аналог SUMIFS)
 
Добрый день.

Подскажите пожалуйста решение задачи в powerquery - хочу вывести нарастающий итог по месяцам для данного клиета и данного сегмента.
В интернете нахожу решения через index column - но без дополнительных критериев как у меня. Также кто-то ссылается на ListGenerate но без примеров.

Спасибо.
Файл с Input и желаемым Output в приложении.
cлучайная выборка заданного количества строк по условию
 
Добрый день,

Еще одна задача, которую не могу самостоятельно решить - понимаю, что надо через RANDOM RANG и INDEX идти, но впустую уже час.
Значит есть база со списком врачей и их пренадлежности (KEY)
На другой вкладке есть KEY и сколько врачей с этим KEY мне нужно обзвонить "TO SELECT".
Нужно в базе в колонку TO CALL поставить 1, чтобы сумма по ключу совпадала с "TO SELECT".
Подскажите пожалуйста.

Спасибо.
Изменено: badzen - 09.09.2022 18:39:54
распределение ресурса по месяцам по условию
 
Отлично, спасибо.
распределение ресурса по месяцам по условию
 
Цитата
МатросНаЗебре написал:
Код
    [URL=#]?[/URL]       1  2  3  4  5  6      'Feuil1!'AB5    =СУММ(AB3:$AM$3)    'Feuil1!'AB5:AM5    =СУММ(AB3:$AM$3)    'Feuil1!'AB6:AM6    =AA8/AB5    'Feuil1!'AB7:AM7    =--(СЛЧИС()<AB6)    'Ответ    'Feuil1!'AB8:AM8    =AA8-AB7    'Feuil1!'AA8    =Tableau1[to distribute]   
 

Спасибо.
Можно попросить вас приложить файл. Я прописал ваши расчеты - но у меня выходит 5 распределенных ресурсов вместо 3 доступных.

Спасибо
распределение ресурса по месяцам по условию
 
Добрый день. Подскажите пожалуйста решение - может с матричными функциями типа UNIQUE и FILTER.

Задача такая - есть ресурс на год. (ячейка A3, если <1 то ресурсы не распределяются)
Есть информация по месяцам когда мощности заняты (синяя табличка) - на эти месяцы ресурсы распределяться не могут.
Есть оранжевая табличка - с прозводством ресурсов, если <0 - на эти месяцы ресурсы распределяться не могут.
Output это зеленая таблица - где с учетом 3 предыдущих условий случайным образом выбираются месяца в которые можно распределить 1 ресурс.
Если доступно 3 ресурса в год и 3 месяца для распределения - в них прописываются 1.
Если доступно например 2 ресурса в год и большее количество месяцев для распределения - то случайным образом выбираются 2 месяца.
Если ресурсов больше чем возможных месяцев - то распределяется максимальное количество ресурсов.

Я пробывал через index и randbetween но не получается все равно. Спасибо за любой совет
Рассчитать в таблице "продажи" цену и сумму товара в зависимости от даты
 
проверьте, я пока жду ответа на свой вопрос в форуме решил вашу задачу, но может напартачил где.
Изменено: badzen - 25.08.2022 21:37:39
Операции с данными из динамического диапазона
 
Добрый вечер.

Преамбула: передо мной стояла задача корреляции, для которой надо было свести несколько таблиц, и у меня там 10 столбцов с характеристиками для группировки, и некоторые данный группируются по секторам, некоторые только по зонам, некоторые по месяцам и т.д. В результате я не справился с SUMMARIZETABLE. Поэтому пошел более топорным путем - через создание сводной таблицы с базовой группировкой - к к которой я присоединяю фильтры (слайсеры) и сложногруппируемые данные.

Теперь я формулой хочу считать корреляции тыкая в фильры.
(в R можно сделать corrplot мультифакторный, но мне нужен только один фактор по горизонтали и много по вертикали - тоже не справился :cry: )

Так как корреляция считаться не будет если в таблице есть пустые значения - то я делаю динамический диапазон где столько же строк как в сводной таблице.
Называю его PLOT.

Теперь хочу сделать корреляцию с колонкой 1 в PLOT и с колонкой 2 в PLOT.
и не понимаю как эту формулу записать?
=коррел(PLOT[Колонка1]);PLOT[Колока2])?

Задачу с Dax и Summarizetable надо решить все же - выставлю ее на платные вопросы 8) .

Спасибо.
PowerQuery связь таблицы с плавающими датами
 
Спасибо, очень элегантное решение! Круто
Подготовка данных для статистики
 
Добрый день, у меня чисто теоретический вопрос.

У меня есть 60 колонок с данными. и 4 ключа по которым эти данные группируются:
Ключ 1 : номер клиента, номер продавца, месяц (пример данных с этим ключом: "Кол-во транзакций с клиентом в заданном месяце")
Ключ 2 : сектор, к которому принадлежит клиент (пример данных с этим ключом: "Кол-во врачей в секторе")
Ключ 3 : сектор и месяц (пример данных с этим ключом: "Доля рынка в этом секторе в заданный месяц")
Ключ 4 : сектор, месяц, номер продавца (пример данных с этим ключом: "Количество транзакций с врачами этим продавцом в этом секторе в заданный месяц")

Эту таблицу я собираюсь закинуть в R в PowerBi с идеей сделать мультифакторный анализ и посмотреть есть ли корреляция, например, между долей рынка и количеством транзакций с врачами.

Мой вопрос - можно ли так делать - кидать в одну таблицу данные сгруппированные по разным ключам, и можно ли затем в powerBi фильтровать данные без ущерба для верности расчетов- например, выбирая определенный сектор или определенную специализацию клиента?

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

Спасибо.
PowerQuery связь таблицы с плавающими датами
 
Добрый день,

Подскажите пожалуйста как объединить таблицы в PowerQuery.
У меня есть таблица продажи по месяцам и таблица Данные Рынка - где данные даются за 3 последних месяца.

Если в Данных Продаж - у меня есть последние месяцы, которых еще нет в Данных Рынка я беру саммый последний месяц из Данных Рынка.
Если в Данных Рынка - последний месяц, например, июль - соответствующее значение надо приписать в Продажах к Июлю, Июню и Маю. А к Апрелю в Продажах приписать только значение Июня из данных Рынка (так как Июнь и Май в данных Рынка перекрыт данными Июля).

Я сделал в Excel -  приложенный файл. Наверное могу сделать CalculatedComumn в Dax. Но в PowerQuery не могу разобраться. Попытался через создание ключей в ДанныхПродаж и в ДанныхРынка, через List.Max и через создание параметров.

Подскажите пожалуйста как по-умному к задаче подойти.

Спасибо
Изменено: badzen - 16.08.2022 15:08:08
создание количества строк по условию
 
Цитата
surkenny написал:
badzen, в PQ:
Код
    [URL=#]?[/URL]       1  2  3  4  5  6  7      let        data      = Excel.CurrentWorkbook(){[ Name =   "input"   ]}[Content],        toRows    = Table.ToRows ( data ),        transform = List.Transform ( toRows, ( x ) => List.Repeat ( { x{0} }, x{1} ) ),        toTable   = Table.FromColumns ( { List.Combine ( transform ) }, { Table.ColumnNames ( data ){0} } )    in        toTable   
 

Очень круто, спасибо
создание количества строк по условию
 
Добрый день.

У меня есть список клиентов в первом столбце, а во втором столбце количество заказов.
Я бы хотел чтобы количество заказов всегда было 1 и строка с клиентом повторялась бы количество раз равное количеству заказов.

Иначе говоря на выходе мне нужен один столбец с количеством строк равному сумме заказов.

Подскажите пожалуйста. Спасибо
задача на распределение ресурсов (Поиск Решений?), Solver, Поиск решений
 
Добрый день.

Почему-то не получается справиться с вроде несложной задачей, поэтому обращаюсь к экспертам.

Задача - распределить количество звонков (ресурс) по клиентам в зависимости от потенциала клиента и в зависимости от максимального возожного количества звонков приписаного к клиенту агента.

Например у меня есть клиент А - ему в идеале надо позвонить 4 раза и клиент Б - ему надо позвонить 3 раза. А максимальное количество звонков которые у меня есть это 5 - тогда я должен получить в столбце решения: 3 для клиента А и 2 для клиента Б.

Может не через Поиск Решений пытаться идти а формулами как-то прописать.

Подскажите пожалуйста.
Примерный файл прикладываю.
Спасибо.
Автоматически определить группы для множества чисел
 
Цитата
Vik_tor написал:
нам дайте формулу- мы переведем ее в эксель  
Да, я понял что сложный процесс - нужно посмотреть сначала есть ли гауссово распределение - и по дополнительным тестам определить количество групп. Я сделал просто - среднее, а потом среднее значение если меньше общего среднего и если больше общего среднего. Получилось 4 корявые группы 8)
Автоматически определить группы для множества чисел
 
Добрый день.

У меня есть колонка с товарооборотом для 20 тысяч клиентов. Я бы хотел разбить эти товарообороты на группы АВС или 1234 но определить интервалы автоматически-статистически, а не вручную (>1000 значит А, >500 значит В...)

Подскажите пожалуйста
Изменено: badzen - 06.04.2022 11:56:20
Страницы: 1 2 3 След.
Наверх