Поделиться через


Использование R в редакторе Power Query

Язык R — это мощный язык программирования, который используют многие статистические специалисты, специалисты по обработке и анализу данных. Для этого можно использовать R в редакторе Power BI Desktop Power Query:

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

Установка R

Вы можете скачать R бесплатно из репозитория CRAN.

Установка мышей

Необходимо установить библиотеку mice в вашей среде R. Без мышей пример кода скрипта не работает должным образом. Пакет MICE реализует метод для обработки отсутствующих данных.

Чтобы установить библиотеку мышей, выполните следующие действия.

  1. Запустите программу R.exe, например C:\Program Files\Microsoft\R Open\R-3.5.3\bin\R.exe.

  2. Выполните команду установки из командной строки R:

    install.packages('mice') 
    

Использование скрипта R в редакторе Power Query

Чтобы продемонстрировать использование R в редакторе Power Query, в этом примере используется семантическая модель фондового рынка, содержащаяся в файле .csv.

  1. Скачайтефайл EuStockMarkets_NA.csv. Помните, где вы сохраните его.

  2. Загрузите файл в Power BI Desktop. На вкладке Главная выберите Получить данные>Текст/CSV.

    снимок экрана: параметр

  3. Выберите файл EuStockMarkets_NA.csv, а затем выберите Открыть. Данные CSV отображаются в диалоговом окне текстового/CSV файла.

    снимок экрана: содержимое выбранного файла .csv.

  4. Выберите загрузить, чтобы загрузить данные из файла. После загрузки данных Power BI Desktop новая таблица появится в области поля.

    снимок экрана: данные на панели

  5. Чтобы открыть редактор Power Query, на ленте Главная выберите Преобразование данных.

    снимок экрана: лента

  6. На вкладке Преобразование выберите Выполнить R-скрипт. Появится редактор скрипта R . В строках 15 и 20 отсутствуют данные, как и другие строки, которые не отображаются на изображении. Следующие шаги демонстрируют, как R завершает эти строки для вас.

    [Снимок экрана редактора Power Query с выбранной функцией выполнения сценариев R.

  7. В этом примере введите следующий код скрипта в поле Скрипт в окне запуска скрипта R.

       library(mice)
       tempData <- mice(dataset,m=1,maxit=50,meth='pmm',seed=100)
       completedData <- complete(tempData,1)
       output <- dataset
       output$completedValues <- completedData$"SMI missing values"
    

    Заметка

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

  8. Нажмите кнопку ОК. Редактор Power Query отображает предупреждение о конфиденциальности данных.

    снимок экрана: предупреждение о конфиденциальности данных с параметром

  9. В предупреждающем сообщении выберите "Продолжить". В появившемся диалоговом окне уровней конфиденциальности установите для всех источников данных уровень Общедоступный, чтобы скрипты R корректно работали в службе Power BI.

    снимок экрана: диалоговое окно

    Дополнительные сведения о параметрах конфиденциальности и их последствиях см. в Power BI Desktop уровнях конфиденциальности.

  10. Выберите Сохранить, чтобы запустить скрипт.

    При запуске скрипта вы увидите следующий результат:

    снимок экрана: результаты скрипта R.

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

    снимок экрана: результаты таблицы из скрипта R.

    Обратите внимание на новый столбец в области полей с именем completedValues. Столбец отсутствующих значений SMI содержит несколько отсутствующих элементов данных. Ознакомьтесь с тем, как R обрабатывает это в следующем разделе.

    Имея всего пять строк скрипта R, редактор Power Query заполнил отсутствующие значения с помощью прогностической модели.

Создание визуальных элементов из данных скрипта R

Теперь мы можем создать визуализацию, чтобы увидеть, как код скрипта R с библиотекой `mice` завершает отсутствующие значения.

снимок экрана: визуальный элемент скрипта R, содержащий отсутствующие значения и завершенные значения.

Вы можете сохранить все завершенные визуальные элементы в одном PBIX-файле Power BI Desktop и использовать модель данных и его скрипты R в службе Power BI.

Заметка

Вы можете скачать PBIX-файл со всеми этими действиями.

После загрузки файла .pbix в службу Power BI необходимо выполнить дополнительные шаги для обновления данных службы и обновления визуальных элементов.

  • Включить запланированное обновление для семантической модели. Чтобы включить запланированное обновление для книги, содержащей семантическую модель с помощью скриптов R, см. Настройка запланированного обновления. В этой статье также содержатся сведения о локальных шлюзах данных.

  • Установка шлюза: На компьютере, где находятся файл и R, должен быть установлен локальный шлюз данных (личный режим). Служба Power BI обращается к этой книге и повторно отрисовывает все обновленные визуальные элементы. Дополнительные сведения см. в статье использование личных шлюзов в Power BI.

Рекомендации и ограничения

Существуют некоторые ограничения для запросов, включающих скрипты R, созданные в редакторе Power Query:

  • Все параметры источника данных R должны иметь значение public. Все остальные шаги в запросе редактора Power Query также должны быть общедоступными.

    Чтобы перейти к параметрам источника данных, в Power BI Desktop выберите Файл>Параметры и настройки>Настройки источника данных.

    снимок экрана: диалоговое окно

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

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

  • Чтобы запланировать обновление визуальных элементов R или семантической модели, включите запланированное обновление и установите локальный шлюз данных (личный режим) на компьютере, содержающем книгу и R. Вы не можете использовать корпоративный шлюз для обновления семантических моделей, содержащих скрипты R в Power Query.

Есть все виды действий, которые можно сделать с помощью R и пользовательских запросов. Просматривайте и формируйте данные так же, как вы хотите, чтобы они отображались.