Заменить значение для совпадающего текста в Power Query

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

В сегодняшнем блоге я продемонстрирую М-функцию Record.FieldOrDefault для этого конкретного случая использования. 

Оглавление

Действия по замене значения для нескольких текстов с точным соответствием 

Навигация по набору данных

Давайте начнем с открытия редактора запросов , чтобы получить доступ к записи «Образцы данных и замены» .

Внутри таблицы мы видим, что не все текстовые строки выровнены по левому краю.

Заменить значение для совпадающего текста в Power Query

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

Запись — это набор полей, и каждое поле имеет пару «имя-значение».

Имя поля должно быть уникальным текстом в записи с помощью Record.FieldOrDefault. 

Заменить значение для совпадающего текста в Power Query

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

Замена значений

Давайте посмотрим, как это работает. 

Сначала я перейду к запросу «Решение» и на вкладке «Преобразование» выберу «Заменить значения».

Заменить значение для совпадающего текста в Power Query

Появится всплывающее окно, и я нажму OK

Заменить значение для совпадающего текста в Power Query

Это генерирует большую часть формы М-кода . Итак, все, что мне нужно сделать, это обновить синтаксис внутри строки формул. 

Заменить значение для совпадающего текста в Power Query

Из формулы видно, что она вызывает нашу исходную таблицу в качестве первого аргумента, а то, что мы ищем, — в качестве второго аргумента. Аргументы обозначаются этими двойными кавычками (" ").

Заменить значение для совпадающего текста в Power Query

То, что я ищу, — это значение внутри первого столбца, поэтому я буду вводить каждый [Col1] в качестве первого аргумента. Затем он хочет, чтобы эта штука заменила бота, и именно здесь я буду использовать эту функцию записи. 

Я наберу каждый Record.FieldOrDefault. Затем он хочет запись или замену и, наконец, то, что мы ищем. Я могу найти это внутри первого столбца, поэтому я скопирую и вставлю [Col1] из первого аргумента для обратной ссылки. 

Если значение не найдено в записи, я хочу, чтобы оно возвращало то, что есть в данный момент. Таким образом, я снова вставлю [Col1] для ссылки на первый столбец на случай, если значение отсутствует. Если я пропущу этот последний параметр и элемент не будет найден в записи, вместо него будет возвращено значение null.

Эти изменения делают нашу формулу такой.

Заменить значение для совпадающего текста в Power Query

Давайте подтвердим, щелкнув значок проверки слева от строки формул.

Результат показан на изображении ниже.

Заменить значение для совпадающего текста в Power Query

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


Функции Microsoft Flow String: Concat and Replace
Проверка данных с использованием IsMatch и переменных
Расширенная таблица дат Power Query M Function

Заключение

В этом блоге я продемонстрировал, как выполнять множественные замены текста с точным совпадением в Power Query . Используя М-функцию Record.FieldOrDefault, вы можете сэкономить время, уменьшив количество шагов, необходимых для достижения тех же результатов. 

Всего наилучшего,

Мелисса де Корте

Leave a Comment

Расчет недельных продаж с помощью DAX в LuckyTemplates

Расчет недельных продаж с помощью DAX в LuckyTemplates

В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

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

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.