Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 146 След.
power query автоматическое добавление нового столбца в группировку
 
karnavad01, переходите на PowerPivot
F1 творит чудеса
Power BI. Выбор типа подключения
 
Есть такая вещь как композитная модель с агрегациями. Суть ее в том, что часть данных (большая таблица со всеми данными) в режиме DQ, а еще часть - в режиме импорта. Например, вы создаете предагрегированную таблицу с заданным уровнем гранулярности в режиме импорта. Она занимает мало места и т.п., и визуал обращается именно к ней, если её гранулярности хватает. Но если нужны детальные данные, то дальше возможно обращение к большой таблице через DQ.

Погуглите Power BI composite model with aggregations.
F1 творит чудеса
power query автоматическое добавление нового столбца в группировку
 
Какое-то немного бессмысленное действие, но вот
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Данные", Int64.Type}}),
    #"Измененный тип1" = Table.TransformColumnTypes(#"Измененный тип",{{"Дата", type date}}),
    #"Дублированный столбец_Данные" = Table.DuplicateColumn(#"Измененный тип1", "Данные", "Копия Данные"),
    Dates = List.Buffer(List.Transform(List.Sort(List.Distinct(#"Дублированный столбец_Данные"[Дата])), Text.From)),
    Quarters = List.Buffer(List.Transform(List.Sort(List.Distinct(#"Дублированный столбец_Данные"[Квартал])), Text.From)),
    #"Сведенный столбец_Дата" = Table.Pivot(Table.TransformColumnTypes(#"Дублированный столбец_Данные", {{"Дата", type text}}, "ru-RU"), Dates, "Дата", "Данные"),
    #"Сведенный столбец_Квартал" = Table.Pivot(Table.TransformColumnTypes(#"Сведенный столбец_Дата", {{"Квартал", type text}}, "ru-RU"), Quarters, "Квартал", "Копия Данные"), 
    #"Сгруппированные строки" = Table.Group(#"Сведенный столбец_Квартал", {"Город", "Менеджер"}, List.Transform(Dates & Quarters, (l)=>{l, (_)=>List.Sum(Table.Column(_, l)), type number})),
    #"3 квартал/2 квартал" = Table.AddColumn(#"Сгруппированные строки", "3 квартал/2 квартал", each [3 квартал]/[2 квартал]),
    #"Измененный тип2" = Table.TransformColumnTypes(#"3 квартал/2 квартал",{{"3 квартал/2 квартал", Percentage.Type}})
in
    #"Измененный тип2"
F1 творит чудеса
Разложить json файл на кластеры
 
Цитата
Молодое_Поколение написал:
где ошибка?
ошибок у вас целая куча.
  1. Что делают строки 2 и 3 вашего кода?
  2. Обратите внимание, куда ссылается строка 15 кода: она обращается к строке 7. Но там нет столбца [data]. Его пока вообще нигде нет.
  3. Все, что начинается с 15 строки, должно разбирать один JSON. А вы, судя по всему, запросили JSONов по количеству строк в таблицах на листе. Значит, вам надо обрабатывать таким образом каждый ответ.
Попробуйте вот такой вариант (не проверял, ибо)
Код
let    
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    Typed  = Table.TransformColumnTypes(Source ,{"Столбец1", type text}),
    Source2 = Excel.CurrentWorkbook(){[Name="Таблица2"]}[Content],
    Typed2  = Table.TransformColumnTypes(Source2 ,{"Столбец1", type text}),
 
    Custom1 = Table.FromColumns({Typed[Столбец1],Typed2[Столбец1]}),
    Custom2 = Table.AddColumn(Custom1, "a", each Json.Document(Web.Contents("https://www.instagram.com/graphql/query/?query_hash=472f257a40c653c64c666ce877d59d2b&variables={""id"":"""&[Column1]&""",""first"":12,""after"":"""&[Column2]&"""}"))),

//это функция разброра одного ответа:
    OneJson = (Response)=>
    let
        data1 = Response[data],
        user = data1[user],
        edge_owner_to_timeline_media = user[edge_owner_to_timeline_media],
        edges = edge_owner_to_timeline_media[edges],
        #"Converted to Table" = Table.FromList(edges, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
        #"Expanded {0}" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"node"}, {"node"}),
        #"Expanded {0}1" = Table.ExpandRecordColumn(#"Expanded {0}", "node", {"id", "__typename", "edge_media_to_caption", "shortcode", "edge_media_to_comment", "comments_disabled", "taken_at_timestamp", "dimensions", "display_url", "edge_media_preview_like", "owner", "thumbnail_src", "thumbnail_resources", "is_video", "video_view_count"}, {"id", "__typename", "edge_media_to_caption", "shortcode", "edge_media_to_comment", "comments_disabled", "taken_at_timestamp", "dimensions", "display_url", "edge_media_preview_like", "owner", "thumbnail_src", "thumbnail_resources", "is_video", "video_view_count"})
    in
        #"Expanded {0}1",
// это столбец, в котором функция применяется к ответам:
    Result = Table.AddColumn(Custom2, "Result", each OneJson([a]), type table)
in
    Result
Изменено: Максим Зеленский - 13 Июл 2020 20:11:58
F1 творит чудеса
Разложить json файл на кластеры
 
Молодое_Поколение, на основе вашего файла - как дойдете до списка записей - в таблицу, и дальше просто разворачивайте нужное, да и всё.
Код
// data (2)
let
    Source = Json.Document(File.Contents("g:\zelen\Desktop\XLS\data.txt")),
    data1 = Source[data],
    user = data1[user],
    edge_owner_to_timeline_media = user[edge_owner_to_timeline_media],
    edges = edge_owner_to_timeline_media[edges],
    #"Converted to Table" = Table.FromList(edges, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Expanded {0}" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"node"}, {"node"}),
    #"Expanded {0}1" = Table.ExpandRecordColumn(#"Expanded {0}", "node", {"id", "__typename", "edge_media_to_caption", "shortcode", "edge_media_to_comment", "comments_disabled", "taken_at_timestamp", "dimensions", "display_url", "edge_media_preview_like", "owner", "thumbnail_src", "thumbnail_resources", "is_video", "video_view_count"}, {"id", "__typename", "edge_media_to_caption", "shortcode", "edge_media_to_comment", "comments_disabled", "taken_at_timestamp", "dimensions", "display_url", "edge_media_preview_like", "owner", "thumbnail_src", "thumbnail_resources", "is_video", "video_view_count"})
in
    #"Expanded {0}1"
F1 творит чудеса
Power query не обновляется запрос, ошибки не показывает, HRESULT: 0x8002802B (TYPE_E_ELEMENTNOTFOUND))
 
Попробуйте скопировать запросы в новую книгу (выделяете в PQ на панели слева все запросы, правая мышь - копировать, затем в другой книге запускаете PQ, аналогично на левой панели ПКМ - вставить). Возможно, проблема в конкретной книге. Большего по представленной информации сказать нельзя
F1 творит чудеса
Создание таблицы в Power Pivot c показателями прибыли по фактическим данным Дохода и Расходов из Модели данным
 
mitox, у вас почему нет связи между таблицами company и budget? не нужна, или?
F1 творит чудеса
Разложить json файл на кластеры
 
Цитата
Молодое_Поколение написал:
С первого значения edges начинаются, публикации,
вот я сходил по вашей ссылке и получил
Код
{"data":{"user":{"edge_owner_to_timeline_media":{"count":347,"page_info":{"has_next_page":false,"end_cursor":null},"edges":[]}}},"status":"ok"}

Нет никакого первого значения у edges.
F1 творит чудеса
Окна Power Query отображаются со сдвигом
 
Попробуйте еще Ctrl + Num+, Ctrl + Num-, Ctrl + Num* при фокусе на этом расползшемся окне. Кажется, что-то из этого работало, но могу ошибиться. Плюс то же самое с Ctrl+Shift
F1 творит чудеса
Разбивка теста по логическому условию в PQ, Разбивка теста по логическому условию в PQ
 
Код
// Таблица1
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Наименование", type text}, {"Длина текста", Int64.Type}}),
    #"Added Custom" = Table.AddColumn(#"Changed Type", "Position", each if Text.Length([Наименование])<40 then Text.Length([Наименование]) else Text.PositionOf(Text.Start([Наименование], 40), " ", Occurrence.Last)),
    #"Added Custom1" = Table.AddColumn(#"Added Custom", "Parts", each Record.FromList(Splitter.SplitTextByPositions({0,[Position]})([Наименование]), {"Part1", "Part2"})),
    #"Expanded {0}" = Table.ExpandRecordColumn(#"Added Custom1", "Parts", {"Part1", "Part2"}, {"Part1", "Part2"}),
    #"Trimmed Text" = Table.TransformColumns(#"Expanded {0}",{{"Part2", Text.Trim, type text}})
in
    #"Trimmed Text"
лишние столбцы потом можно удалить
F1 творит чудеса
PQ. Неявное перечисление аргументов Text.Combine
 
PooHkrd, одинаковые ли у них исходные коды - бог его знает, я даже допускаю, что одна вызывает другую (не раз такое видел), но то, что вход и выход у них идентичны - факт
F1 творит чудеса
PQ. Неявное перечисление аргументов Text.Combine
 
Да ну, все проще :)
Код
= Table.AddColumn(Таблица, "Combine", each Text.Combine(Record.FieldValues(Record.SelectFields(_,ColName)), ""), type text)
F1 творит чудеса
Итоги по строкам и столбцам Power Pivot, Power Pivot; Итоги
 
Цитата
PooHkrd написал:
Небось заказ хороший сделал и развлекается.
идрить...  8-0  у меня ж заказ висит! 🤦‍♂️ 🏃‍♂️🏃‍♂️🏃‍♂️🏃‍♂️
F1 творит чудеса
Power Query. Удаление подряд идущих дубликатов только в двух столбцах с сохранением строки
 
Ну вот на примере Маши и Вани, сделал на кнопочках
F1 творит чудеса
Power Query. Удаление подряд идущих дубликатов только в двух столбцах с сохранением строки
 
Так, что ли?

 
F1 творит чудеса
Power Query. Удаление подряд идущих дубликатов только в двух столбцах с сохранением строки
 
Цитата
Максим Зеленский написал:
Нарисуйте правильный ответ
это последняя попытка помочь. ответьте на вопрос в сообщении #5
F1 творит чудеса
Power Query. Удаление подряд идущих дубликатов только в двух столбцах с сохранением строки
 
Цитата
maxrus163 написал:
осталось две обычные таблицы откуда работает запрос и одна табличка где прописан путь к файлу, но файл все равно 400 кб

... сгенерируйте таблицу вплоть до 12-го шага вашего запроса. Отфильтруйте только те данные, которые отражают типичную картину (есть дубликаты и нет дубликатов). Переименуйте секретные данные. Сделайте таблицу, которая будет показывать желаемый результат на этом примере. Прикрепите этот файл без каких-либо запросов. Уверяю, можно уложиться в 40 кб
F1 творит чудеса
Power Query. Удаление подряд идущих дубликатов только в двух столбцах с сохранением строки
 
Ок, давайте разговаривать картинками.

Что должно произойти с выделенным красной рамкой? Что должно произойти с выделенным желтым цветом? Нарисуйте правильный ответ

 
Изменено: Максим Зеленский - 10 Июл 2020 11:24:15
F1 творит чудеса
Как обойти преобразование данных при открытии CSV
 
Vsevolod, надо наоборот, сначала формат ячейки, потом вставка, потом трюк
 
F1 творит чудеса
Power Query. Удаление подряд идущих дубликатов только в двух столбцах с сохранением строки
 
Цитата
maxrus163 написал:
меньше 400 кб не получилось сделать
  1. Не верю. Зачем нам весь файл? Зачем нам предыдущие шаги? Вы получаете какую-то таблицу, в которой хотите удалить дубликаты по какому-то правилу. Так приложите только эту таблицу, обрезанную и обфусцированную, но отражающую суть.
  2. Непонятно, что нужно получить. Как должен выглядеть результат?
F1 творит чудеса
Power Query. Слияние по совпадению начала номера договора.
 
В общем, на всякий, если нужно не внутреннее, а левое внешнее объединение:
Код
let
    Dogovor = List.Buffer(Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content][Договор kak он уkaзaн в нaзнaчении]),
    Baza = Excel.CurrentWorkbook(){[Name="Таблица2"]}[Content],
    ChangedType = Table.TransformColumnTypes(Baza,{{"Договор в базе", type text}, {"Дата", type datetime}}),
    AddedCustom = Table.AddColumn(ChangedType, "Договор", each List.Select(Dogovor, (q)=>Text.StartsWith([Договор в базе],q)), type {text}),
    Expanded = Table.ExpandListColumn(AddedCustom, "Договор")
in
    Expanded
F1 творит чудеса
Power Query. Слияние по совпадению начала номера договора.
 
А точно нужно, чтобы из базы пропал договор F02672-0004444?
F1 творит чудеса
Power Query. Слияние по совпадению начала номера договора.
 
Слияние здесь не поможет, я думаю. Ну или коллеги меня удивят ))
Как мне видится, нужно будет делать допстолбец в одной из таблиц (меньшей) с проверкой вхождения и подстановкой найденного значения, а потом уже джойн.
Но выглядит это трудоемко, конечно.
F1 творит чудеса
Итоги по строкам и столбцам Power Pivot, Power Pivot; Итоги
 
Цитата
Виталий написал:
в случае с мерой все три формулы меры обязательны
можно и в одну все собрать:

Код
Продажи + 4-3 =
IF(
    HASONEVALUE( 'Магазины'[Магазин] ),
    SUM( 'Продажи_факт'[Продажи (шт.)] ),
    CALCULATE( SUM( 'Продажи_факт'[Продажи (шт.)] ), 'Магазины'[Магазин] = 4 )
        - CALCULATE( SUM( 'Продажи_факт'[Продажи (шт.)] ), 'Магазины'[Магазин] = 3 )
)
F1 творит чудеса
Итоги по строкам и столбцам Power Pivot, Power Pivot; Итоги
 
Код
4-3   =
CALCULATE ( [Продажи], 'Магазины'[Магазин] = 4 )
    - CALCULATE ( [Продажи], 'Магазины'[Магазин] = 3 )

Код
Продажи   =
SUM ( 'Продажи_факт'[Продажи (шт.)] )

Код
Продажи + 4-3   =
IF ( HASONEVALUE ( 'Магазины'[Магазин] ), [Продажи], [4-3] )

Вообще и наборы работают, см в файле
F1 творит чудеса
Обработка сложной иерархии в плоскую таблицу на базе функции Зеленского
 
Цитата
Иванов Вадим написал:
какими нужно быть идиотами, чтобы это отключить
приблизительная цитата из моего админа была бы примерно такой:
Цитата
внутри 1С множество сущностей и отчетов переписано под нужды компании с учетом тонкостей бизнес-процессов, поэтому единственно правильные отчеты - это отчеты, разработанные программистом 1С. Вольная компоновка данных в этих отчетах также не позволяется, так как приводит к неправильным расчетам и т.п.
В общем, вот такая вот single version of truth. Ну и политика, опять же, и бюрократия в классическом духе принципа Питера.
F1 творит чудеса
Количество значений в диапазоне, не встречающихся в другом диапазоне
 
без привязки к строкам и сортировке:

=СУММПРОИЗВ((Таблица1[Год заключения договора]=F4)*(СЧЁТЕСЛИМН(Таблица1[ID контрагента];Таблица1[ID контрагента];Таблица1[Год заключения договора];"<"&F4)=0))

F1 творит чудеса
Как обойти преобразование данных при открытии CSV
 
Импортируйте файл через мастер импорта данных (например, Power Query или старым Imoprt from text, а не простым открытием файла. Тогда все будет в ваших руках
F1 творит чудеса
Выгрузка данных из запроса PQ, несоответствие данных в сводной таблице из запроса
 
Цитата
Михаил Л написал:
то алгоритм сортировки либо отсутствует, либо алгоритм сортировки - хаос.
Сортировка отсутствующим алгоритмом - это сильно...  :D  То, что вы не знаете, как, еще не значит, что там хаос, + PQ должен сортировать быстро, а не так, как вам удобно.

Например, там сортировка Хоара + слияние, а размер чанка определяется динамически, плюс поправка на необходимость сортировки по нескольким столбцам (многомерная сортировка), и все вместе называется, скажем, "алгоритм Раджапутры Сингха-младшего". Вряд ли вам станет легче.

Вы же хотите, чтобы в любой сортировке было еще одно измерение - номер строки. Это замедлит даже обычную сортировку по одному столбцу. И нафига это надо?
F1 творит чудеса
Вычисление интервалов дат Power Querry, Разница между двумя датами для уникального аргумента
 
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    Typed = Table.TransformColumnTypes(Source,{{"ID", Int64.Type}, {"Date", type date}}),
    Grouped = Table.Group(Typed, {"ID"}, {
        {"tmp", 
        each 
            let 
                dates = List.Sort(_[Date]), 
                datesTab = Table.FromColumns({dates, {null}&List.RemoveLastN(dates, 1) }, {"Date","DateShift"}) 
            in 
                Table.AddColumn(datesTab, "Difference", each Duration.TotalDays([Date]-[DateShift])),
        type table [Date=date, Difference=Int64.Type]
                }
            }
        ),
    Expanded = Table.ExpandTableColumn(Grouped, "tmp", {"Date", "Difference"}, {"Date", "Difference"})
in
    Expanded
F1 творит чудеса
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 146 След.
Наверх