Срезать ряды вместе - PullRequest
       14

Срезать ряды вместе

0 голосов
/ 28 февраля 2019

enter image description here

HI,

, как вы можете видеть на изображении, я хочу сделать один ряд из 4 рядов.Каждый набор значений имеет один и тот же порядковый номер.

Ответы [ 4 ]

0 голосов
/ 01 марта 2019

И вот еще один подход, который устраняет проблему, о которой @Ryan указал в моем предыдущем ответе.

Я начал с этого:

enter image description here

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

Затем я добавил индекс.... А потом я добавил модуль:

enter image description here enter image description here

Затем я изменил код, созданный для графического интерфейсапо модулюЯ изменил его с Table.TransformColumns(#"Added Index", {{"Index", each Number.Mod(_, 4), type number}}) на Table.AddColumn(#"Added Index", "Modulo", each Number.Mod([Index], Table.ColumnCount(Source)), type number). Это меняет настройку с жесткого кода 4 на количество столбцов таблицы.

enter image description here

Затем я добавил столбецс этим кодом: if [Modulo] = 0 then [Index] else null, что совпадает с добавлением условного столбца со следующими настройками:

enter image description here

enter image description here

Затем я выбрал столбец Пользовательский и заполнил:

enter image description here

Затем я сгруппировал столбец Пользовательский с помощью счетчика изатем я отредактировал полученный код следующим образом: Table.Group(#"Filled Down", {"Custom"}, {{"Voorvehandeling", each List.RemoveNulls([Voorvehandeling]), type text}, {"Proces", each List.RemoveNulls([Proces]), type text}, {"Laagdikte", each List.RemoveNulls([Laagdikte]), type text}, {"Kleur", each List.RemoveNulls([Kleur]), type text}})

enter image description here

Затем я добавил еще один столбец с этим кодом: Table.FromColumns({[Voorvehandeling],[Proces],[Laagdikte],[Kleur]},{"Voorvehandeling","Proces","Laagdikte","Kleur"})

enter image description here

Затем я удалил все, кроме нового столбца Tabled:

enter image description here

И, наконец, ярасширен столбец таблицы:

enter image description here

Обратите внимание, что в Laagdikte учитывается ноль.

Oh... И мои извинения за неправильное написание Voorbehandeling как Voorvehandeling на протяжении всей бдругие ответы.По крайней мере, я был последовательным.;)

Вот код М:

let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Added Index" = Table.AddIndexColumn(Source, "Index", 0, 1),
#"Inserted Modulo" = Table.AddColumn(#"Added Index", "Modulo", each Number.Mod([Index], Table.ColumnCount(Source)), type number),
#"Added Custom" = Table.AddColumn(#"Inserted Modulo", "Custom", each if [Modulo] = 0  then [Index] else null),
#"Filled Down" = Table.FillDown(#"Added Custom",{"Custom"}),
#"Grouped Rows" = Table.Group(#"Filled Down", {"Custom"}, {{"Voorvehandeling", each List.RemoveNulls([Voorvehandeling]), type text}, {"Proces", each List.RemoveNulls([Proces]), type text}, {"Laagdikte", each List.RemoveNulls([Laagdikte]), type text}, {"Kleur", each List.RemoveNulls([Kleur]), type text}}),    
#"Added Custom1" = Table.AddColumn(#"Grouped Rows", "Tabled", each Table.FromColumns({[Voorvehandeling],[Proces],[Laagdikte],[Kleur]},{"Voorvehandeling","Proces","Laagdikte","Kleur"})),
#"Removed Other Columns" = Table.SelectColumns(#"Added Custom1",{"Tabled"}),
#"Expanded Tabled" = Table.ExpandTableColumn(#"Removed Other Columns", "Tabled", {"Voorvehandeling","Proces","Laagdikte","Kleur"}, {"Voorvehandeling","Proces","Laagdikte","Kleur"})
in
#"Expanded Tabled"
0 голосов
/ 28 февраля 2019

Начиная с этого в качестве источника:

enter image description here

Нажмите enter image description here и введите Table.FromColumns({List.RemoveNulls(Source[Voorvehandeling]),List.RemoveNulls(Source[Proces]),List.RemoveNulls(Source[Laagdikte]),List.RemoveNulls(Source[Kleur])},{"Voorvehandeling","Proces","Laagdikte","Kleur"})

Вот и все:

enter image description here

Мой М-код:

let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
Custom1 = Table.FromColumns({List.RemoveNulls(Source[Voorvehandeling]),List.RemoveNulls(Source[Proces]),List.RemoveNulls(Source[Laagdikte]),List.RemoveNulls(Source[Kleur])},{"Voorvehandeling","Proces","Laagdikte","Kleur"})
in
Custom1
0 голосов
/ 28 февраля 2019

Хорошо, я смоделировал набор данных, чтобы он выглядел как ваш:

enter image description here

Вам понадобится способ группировки строк.Вы можете использовать значение в своем наборе данных, если оно у вас есть, или создать свое собственное, например: Добавить индекс.Разделите индекс на число или строки в каждой «группе строк», а затем обрежьте результат до целого числа.Поиграйте немного с начальным номером в вашем индексе, чтобы получить округление, чтобы расположить номера группировок там, где они вам нужны.

enter image description here

Используйте 'Группировать покнопка 'в запросе питания - вы можете найти его на ленте Home и Transform.Сгруппируйте по значению, которое разделяют строки.Создайте агрегат для каждого столбца и используйте агрегацию «max».Это будет принимать ненулевое значение из каждого набора строк.

enter image description here

VOILA!

enter image description here

Надеюсь, это поможет.

0 голосов
/ 28 февраля 2019

1 - если вы работаете в Power BI Desktop, нажмите кнопку «Изменить запросы» на ленте «Главная».Это откроет редактор запросов.

2 - Удерживая нажатой кнопку «Shift» на клавиатуре, затем щелкните заголовки столбцов для столбцов, которые вы хотите объединить (в вашем случае, я думаю, вам нужны Voorbehandling, Proces, Laagdikte и Kleur).Это должно выделить / выделить все соответствующие столбцы.

3 - Нажмите на ленту «Добавить столбец» в верхней части страницы.Нажмите на кнопку «Объединить столбцы».Появится диалоговое окно, позволяющее вам указать, как вы хотите объединить ваши столбцы (добавить разделитель и т. Д.)

Нажмите, чтобы увидеть, где найти кнопку «Объединить столбцы»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...