Подсчет количества дубликатов в столбце в Power Query

Power Query – это мощный инструмент для подготовки, очистки и анализа данных в Excel. Он позволяет быстро и просто выполнять различные операции с данными, включая подсчет количества дубликатов в столбцах.

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

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

duplicate in Power Query

Для начала, откройте таблицу данных в Power Query Editor. Сгруппируйте строки в таблице данных по уникальным значениям столбца “Город, страна”. В результате вы получите подсчитанное количество строк в каждой группе.

duplicate in Power Query

После чего объедините исходную таблицу данных и таблицу с количеством дубликатов по столбцу “Город, страна”. Это можно сделать через следующую запись кода (объединение запросов):

= Table.NestedJoin(source, {"Город, страна"}, tableCountDupl, {"Город, страна"}, "Source", JoinKind.LeftOuter),

В результате вы получите следующую таблицу

duplicate in Power Query

Разверните элемент source и в результате, после удаления лишнего столбца и переименования вы получите следующий результат:

duplicate in Power Query

Код выглядит следующим образом:

let 
    Источник = Excel.CurrentWorkbook(){[Name="CitysList"]}[Content], 
    source = Table.TransformColumnTypes(Источник,{{"Город, страна", type text}}), 
    tableCountDupl = Table.Group(source, {"Город, страна"}, {{"Количество дубликатов", each Table.RowCount(_), type number}}), 
    joinedTable = Table.NestedJoin(source, {"Город, страна"}, tableCountDupl, {"Город, страна"}, "Source", JoinKind.LeftOuter), 
    #"Развернутый элемент Source" = Table.ExpandTableColumn(joinedTable, "Source", {"Город, страна", "Количество дубликатов"}, {"Source.Город, страна", "Source.Количество дубликатов"}), 
    #"Удаленные столбцы" = Table.RemoveColumns(#"Развернутый элемент Source",{"Source.Город, страна"}), 
    #"Переименованные столбцы" = Table.RenameColumns(#"Удаленные столбцы",{{"Source.Количество дубликатов", "Количество дубликатов"}}) 
in 
    #"Переименованные столбцы"

Файл с примером:

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Добавить комментарий