Таблиця розмірів у текстовому файлі: рішення Power Query

У цій публікації в блозі я розгляну проблему №2 із поточної проблеми тижня на , де ми обговорювали, як сортувати брудні дані в чисту таблицю розмірів. Це друга ітерація цієї нової ініціативи, яку ми розміщуємо в LuckyTemplates. Я особливо захоплений цією серією, тому що вона дає кожному шанс отримати більше практики на регулярній основі. Ви можете переглянути повне відео цього підручника внизу цього блогу.

У першу середу кожного місяця відбувається перевірка DAX , а в третю середу – перевірка потужних запитів .

Це чудова нагода досліджувати, відкривати та вивчати нові речі про ці мови, які потрібно використовувати в LuckyTemplates.

Ви знайдете категорію «Проблема тижня» на форумі LuckyTemplates.

Таблиця розмірів у текстовому файлі: рішення Power Query

Основна увага приділяється процесу, а не стільки результату.

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

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

Раніше Брайан розповідав про техніку під назвою « налагодження гумовою качечкою ». Якщо ви пропустили це, обов’язково подивіться його відео. Це може допомогти вам, коли ви застрягли в цих викликах.

Спочатку розглянемо поставлене завдання. У нас є брудний текстовий файл, який потрібно перетворити на правильну таблицю розмірів.

Таблиця розмірів у текстовому файлі: рішення Power Query

Тепер, коли я дивлюся на такі дані, здебільшого це буде пов’язано з очищенням тексту, видаленням небажаних символів, обрізанням, використанням великих слів і так далі.

Але нам також потрібно отримати всі рядки з цього стеку даних і перетворити їх на один рядок для кожної країни. Я називаю це стековими даними, оскільки всі назви полів повторюються в одному стовпці для кожної країни.

У мене є певний досвід роботи з Excel, і, на мій погляд, одна з його найпотужніших функцій.

Зміст

Зведені таблиці в Excel

Зведені таблиці дозволяють переглядати дані сегмент за сегментом. Залежно від того, що ви розміщуєте в розділі рядка, зведена таблиця згущує кожне входження цього сегмента в один рядок.

Потім ви можете ще більше розділити це, перетягнувши поля в розділ стовпців.

Я створив приклад того, як це виглядає. Тут ми маємо майже ті самі дані, що й у текстовому файлі.

Таблиця розмірів у текстовому файлі: рішення Power Query

А на наступній сторінці я створив порожню зведену таблицю.

Таблиця розмірів у текстовому файлі: рішення Power Query

Тепер я вам не показав, що у мене тут три колонки замість двох, які я вам уже показав.

Я збираюся перетягнути свій сегмент до рядків.

Таблиця розмірів у текстовому файлі: рішення Power Query

Оскільки стовпець 1 містив назви полів, я збираюся перетягнути їх до розділу стовпців.

Стовпець 2 містив усі значення полів, тому я збираюся перетягнути їх у розділ значень.

Таблиця розмірів у текстовому файлі: рішення Power Query

Тут ми бачимо, що зведені таблиці не можуть обробляти текстові рядки. Він підраховує їх, але показує, що ми маємо одне значення для кожного поля.

Таблиця розмірів у текстовому файлі: рішення Power Query

Тепер давайте подивимося на сегмент, який я створив. Тож я збираюся повернутися до даних і відобразити свій стовпець. Ви бачите, що це лише номер індексу, який ідентифікує кожен з окремих блоків даних, які все ще розташовані один на одному.

Таблиця розмірів у текстовому файлі: рішення Power Query

Тому для мене ключовим перетворенням буде зведення даних, щоб повернути їх у той табличний формат.

На форумі я бачив інші способи боротьби з цим. Існують інші способи отримати табличний формат, окрім використання дії зведення, і вони працюють однаково добре. Якщо вас це цікавить, зайдіть на форум і почніть досліджувати.

Використання Power Query для створення таблиці розмірів

Давайте переглянемо запит потужності та переглянемо моє рішення.

Особисто я вважаю, що інтерфейс користувача чудово справляється з написанням основної частини коду M для нас. Тому я намагаюся розробляти свої запити, використовуючи інтерфейс користувача, наскільки це можливо.

Коли запит виконає те, що мені потрібно, я зайду в розширений редактор і перевірю код M, щоб побачити, чи можу я його змінити. Давайте подивимось, як це виглядає.

Це моя базова група, створена за допомогою інтерфейсу користувача.

Таблиця розмірів у текстовому файлі: рішення Power Query

Ви можете побачити, що в застосованих кроках праворуч є багато кроків.

Таблиця розмірів у текстовому файлі: рішення Power Query

Це саме по собі не є проблемою, але просто подивившись на ці кроки, ви побачите, що є багато перетворень, які можна згрупувати разом.

Давайте відкриємо розширений редактор.

Таблиця розмірів у текстовому файлі: рішення Power Query

Ми бачимо, що цей запит має 31 крок.

Я також додав кілька коментарів до цього самого запиту, що містить 31 крок, але я розбив його на розділи.

Таблиця розмірів у текстовому файлі: рішення Power Query

Перше, що я зробив, це видалив крок зміни типу. Я пропоную створити спеціальну функцію для виконання всіх цих кроків перетворення тексту.

Тут є багато коментарів, але є лише дві речі, які я хочу висвітлити в цій публікації блогу. По-перше, це спеціальна функція для очищення тексту .

Другий — основний крок, щоб повернути цей тип даних у правильний табличний формат .

Спеціальна функція очищення тексту

Давайте повернемося до ранніх етапів побудови мого запиту, де я мав усі згруповані кроки для очищення цих текстів: стовпець 1 і об’єднаний стовпець.

Я також додав додатковий спеціальний стовпець. Його єдина мета полягає в створенні моєї спеціальної функції очищення тексту . Я викликав це в об’єднаному стовпці.

Таким чином, мені не потрібно писати функцію за один раз, а створювати її поступово, крок за кроком, додаючи нове перетворення після перегляду результатів попереднього кроку.

Таблиця розмірів у текстовому файлі: рішення Power Query

Давайте подивимося на код M для функції очищення тексту.

Таблиця розмірів у текстовому файлі: рішення Power Query

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

З цим результатом я виконав усі необхідні перетворення. Деякі з функцій M, які я використовував тут, були надані інтерфейсом користувача, коли я створював свій початковий запит, наприклад Text. Функція обрізки. Однак інші функції не використовувалися.

Якщо ви з ними не знайомі, ви можете переглянути всів довіднику з формули M онлайн. Це посилання , куди вам потрібно перейти.

Таблиця розмірів у текстовому файлі: рішення Power Query

Ви знайдете розділ, присвячений Power Query та функціям.

Таблиця розмірів у текстовому файлі: рішення Power Query

Якщо прокрутити вниз, ви знайдете розділ із текстовою функцією, і кожен розділ починається з огляду. Існує список усіх текстових функцій у мові потужних запитів і формул M.

Якщо ви шукаєте конкретну трансформацію, ви можете переглянути це прямо тут.

Таблиця розмірів у текстовому файлі: рішення Power Query

Зведення даних

Друга частина, яку я хотів висвітлити під час створення цієї таблиці розмірів, це поворот самих даних. Давайте також розглянемо це ближче.

Я почав з додавання індексу. Я оновив цей індекс, щоб правильно сегментувати блоки даних. Я зробив це, повернувши номер індексу для кожного рядка, де в стовпці 1 була країна тексту, а потім я заповнив це значення.

Таблиця розмірів у текстовому файлі: рішення Power Query

Все, що нам потрібно зробити, це звести самі дані. На вкладці трансформації ви знайдете зведений стовпець. Вибравши стовпець 1, клацніть на Pivot Column.

Він використовуватиме значення стовпця 1 як назву нового стовпця. Він також хоче знати, де знаходяться значення цих імен полів. Вони знаходяться в нашому об’єднаному стовпці.

Таблиця розмірів у текстовому файлі: рішення Power Query

Якщо Excel може працювати з текстовими значеннями, то Power Query також може через налаштування додаткових параметрів. Все, що нам потрібно зробити, це вибрати «Не агрегувати» , щоб він міг обробляти текстові значення.

Таблиця розмірів у текстовому файлі: рішення Power Query

Як тільки ми натиснемо кнопку OK, ми побачимо, що наші дані були зведені.

Таблиця розмірів у текстовому файлі: рішення Power Query

Висновок

Зображення вище є остаточним результатом запиту. Сподіваюся, вам сподобалося, як ми змінили безладні дані в наданому текстовому файлі та перетворили їх на чисті, придатні для аналізу.

Якщо вам сподобалася ця публікація в блозі, підпишіться на канал LuckyTemplates, щоб не пропустити новий вміст.

Я сподіваюся побачити вас у майбутніх завданнях «Проблема тижня».

Меліса


Фінансова інформаційна панель LuckyTemplates: повні поради щодо налаштування таблиці

Фінансова інформаційна панель LuckyTemplates: повні поради щодо налаштування таблиці

LuckyTemplates — чудовий інструмент для фінансової звітності. Ось підручник про те, як створювати персоналізовані таблиці для вашої фінансової інформаційної панелі LuckyTemplates.

Рекомендації щодо потоку мови Power Query

Рекомендації щодо потоку мови Power Query

У цьому підручнику обговорюватиметься технологія Power Query Language Flow і те, як вона може допомогти створити гладкий і ефективний звіт із даними.

Спеціальні значки LuckyTemplates | Техніка візуалізації PBI

Спеціальні значки LuckyTemplates | Техніка візуалізації PBI

Я обговорю одну з моїх улюблених технік, пов’язаних із користувальницькими піктограмами LuckyTemplates, яка динамічно використовує власні піктограми у візуальних елементах LuckyTemplates.

Створення таблиць LuckyTemplates за допомогою функції UNION & ROW

Створення таблиць LuckyTemplates за допомогою функції UNION & ROW

У цьому блозі я покажу вам, як можна створювати таблиці LuckyTemplates за допомогою формули, яка поєднує функції UNION і ROW.

Локальний шлюз даних у Power Automate

Локальний шлюз даних у Power Automate

Дізнайтеся, як локальний шлюз даних дозволяє Power Automate отримувати доступ до настільних програм, коли користувач знаходиться поза комп’ютером.

Відкрийте для себе унікальні ідеї за допомогою функції TOPN LuckyTemplates

Відкрийте для себе унікальні ідеї за допомогою функції TOPN LuckyTemplates

У цьому блозі представлено функцію LuckyTemplates TOPN DAX, яка дає вам змогу отримувати унікальну статистику з ваших даних, допомагаючи вам приймати кращі маркетингові рішення.

Моделювання даних у LuckyTemplates за допомогою допоміжних таблиць

Моделювання даних у LuckyTemplates за допомогою допоміжних таблиць

Дізнайтеся про деякі фантастичні аналітичні прийоми, які ми можемо використовувати для моделювання даних у LuckyTemplates за допомогою таблиць підтримки DAX.

Розширений DAX для LuckyTemplates: впровадження логіки ранжування в унікальній статистиці

Розширений DAX для LuckyTemplates: впровадження логіки ранжування в унікальній статистиці

Тут ми зануримося в LuckyTemplates Advanced DAX і запровадимо логіку ранжирування, щоб отримати дуже унікальну інформацію. У цьому прикладі я також демонструю розгалуження міри.

Функція параметра LuckyTemplates «Що, якщо».

Функція параметра LuckyTemplates «Що, якщо».

У цьому блозі представлено нову функцію в LuckyTemplates — параметр аналізу «Що, якщо». Ви побачите, як це робить усе швидким і легким для аналізу сценарію.

Використовуйте розгалуження міри LuckyTemplates, щоб перевірити, чи зростає ваша маржа зі зростанням доходу

Використовуйте розгалуження міри LuckyTemplates, щоб перевірити, чи зростає ваша маржа зі зростанням доходу

Дізнайтеся, як визначити, чи добре зростає ваш дохід, перевіривши, чи зросла ваша маржа за допомогою розгалуження міри LuckyTemplates.