Использование Python в Редактор Power Query
Вы можете использовать Python, язык программирования, широко используемый статистическими специалистами, специалистами по обработке и анализу данных, в Редактор Power Query Power BI Desktop. Эта интеграция Python с Редактор Power Query позволяет выполнять очистку данных с помощью Python, а также выполнять расширенную формирование и аналитику данных в наборах данных, включая завершение отсутствующих данных, прогнозов и кластеризация, только для определения нескольких. Python — это мощный язык, который можно использовать в Редактор Power Query для подготовки модели данных и создания отчетов.
Необходимые компоненты
Перед началом работы необходимо установить Python и pandas.
Установите Python. Чтобы использовать Python в Редактор Power Query Power BI Desktop, необходимо установить Python на локальном компьютере. Вы можете скачать и установить Python бесплатно из многих расположений, включая официальную страницу загрузки Python и Anaconda.
Установите pandas — чтобы использовать Python с Редактор Power Query, вам также потребуется установить pandas. Pandas используется для перемещения данных между Power BI и средой Python.
Использование Python с Редактор Power Query
Чтобы показать, как использовать Python в Редактор Power Query, воспользуйтесь этим примером из набора данных фондового рынка на основе CSV-файла, который можно скачать здесь и следовать далее. Ниже приведены действия, описанные в этом примере.
Сначала загрузите данные в Power BI Desktop. В этом примере загрузите csv-файл EuStockMarkets_NA.csv и выберите "Получить текст данных>/CSV" на ленте "Главная" в Power BI Desktop.
Выберите файл и нажмите кнопку "Открыть", а CSV-файл отображается в диалоговом окне CSV-файла .
После загрузки данных вы увидите его в области "Поля " в Power BI Desktop.
Откройте Редактор Power Query, выбрав "Преобразовать данные" на вкладке "Главная" в Power BI Desktop.
На вкладке "Преобразование" выберите "Запуск скрипта Python" и редактор скриптов Python отображается, как показано на следующем шаге. Строки 15 и 20 страдают от отсутствующих данных, так как другие строки не отображаются на следующем рисунке. Ниже показано, как Python завершает эти строки.
В этом примере введите следующий код скрипта:
import pandas as pd completedData = dataset.fillna(method='backfill', inplace=False) dataset["completedValues"] = completedData["SMI missing values"]
Примечание.
Для правильной работы предыдущего кода скрипта необходимо установить библиотеку pandas в среде Python. Чтобы установить pandas, выполните следующую команду в установке Python:
pip install pandas
При вводе в диалоговое окно запуска скрипта Python код выглядит следующим образом:
После нажатия кнопки "ОК"Редактор Power Query отображается предупреждение о конфиденциальности данных.
Для правильной работы скриптов Python в служба Power BI все источники данных должны быть установлены на общедоступные. Дополнительные сведения о параметрах конфиденциальности и их последствиях см. в разделе "Уровни конфиденциальности".
Обратите внимание на новый столбец в области "Поля " с именем completedValues. Обратите внимание, что существует несколько отсутствующих элементов данных, таких как строка 15 и 18. Ознакомьтесь с тем, как Python обрабатывает это в следующем разделе.
С тремя строками скрипта Python Редактор Power Query заполнены отсутствующими значениями с прогнозной моделью.
Создание визуальных элементов из данных скрипта Python
Теперь мы можем создать визуальный элемент, чтобы узнать, как код скрипта Python с помощью библиотеки pandas завершил отсутствующие значения, как показано на следующем рисунке:
После завершения этого визуального элемента и других визуальных элементов, которые можно создать с помощью Power BI Desktop, можно сохранить файл Power BI Desktop. Файлы Power BI Desktop сохраняются с расширением PBIX-файла . Затем используйте модель данных, включая скрипты Python, которые являются частью его, в служба Power BI.
Примечание.
Хотите просмотреть завершенный PBIX-файл, выполнив указанные ниже действия? Ты удача. Вы можете скачать готовый файл Power BI Desktop , используемый в этих примерах прямо здесь.
После отправки PBIX-файла в служба Power BI необходимо выполнить несколько дополнительных действий, чтобы включить обновление данных в службе и включить обновление визуальных элементов в службе. Данные должны иметь доступ к Python для обновления визуальных элементов. Ниже приведены следующие действия.
- Включите запланированное обновление для набора данных. Чтобы включить запланированное обновление книги, содержащей набор данных с помощью скриптов Python, см. статью "Настройка запланированного обновления", которая также содержит сведения о личном шлюзе.
- Установите личный шлюз. Вам нужен личный шлюз, установленный на компьютере, где находится файл, и где установлен Python. Служба Power BI должен получить доступ к этой книге и повторно отобразить все обновленные визуальные элементы. Дополнительные сведения см. в статье об установке и настройке личного шлюза.
Рекомендации и ограничения
Существуют некоторые ограничения для запросов, включающих скрипты Python, созданные в Редактор Power Query:
Все параметры источника данных Python должны быть общедоступными, а все остальные шаги в запросе, созданном в Редактор Power Query, также должны быть общедоступными. Чтобы добраться до параметров источника данных, в Power BI Desktop выберите > параметры файла и параметры >источника данных.
В диалоговом окне "Источник данных" Параметры выберите источники данных, а затем выберите пункт "Изменить разрешения" и убедитесь, что уровень конфиденциальности установлен как общедоступный.
Чтобы включить запланированное обновление визуальных элементов Python или набора данных, необходимо включить запланированное обновление и установить личный шлюз на компьютере, на котором размещена книга и установка Python. Дополнительные сведения об обоих см. в предыдущем разделе этой статьи, где приведены ссылки для получения дополнительных сведений о каждом из них.
Вложенные таблицы, которые являются таблицей таблиц, в настоящее время не поддерживаются.
Существуют все виды действий, которые можно сделать с помощью Python и пользовательских запросов, поэтому просматривайте и формируйте данные так же, как вы хотите, чтобы они отображались.