Power Query エディターで R を使用する

R 言語は、多くの統計学者、データ科学者、データ アナリストが使用する強力なプログラミング言語です。 Power BI Desktop の Power Query エディターで R を使用し、次のことができます。

  • データ モデルの準備。
  • レポートの作成。
  • データ クレンジング、高度なデータ整形、セマンティック モデル分析の実行 (欠損データの補完、予測、クラスタリングなどが含まれます)。

R をインストールする

R は CRAN リポジトリから無料でダウンロードできます。

mice をインストールする

前提条件として、R 環境に mice ライブラリをインストールする必要があります。 mice がないと、サンプル スクリプト コードは正常に動作しません。 mice パッケージには、欠損データを処理するメソッドが実装されています。

mice ライブラリをインストールするには:

  1. R.exe プログラムを起動します (たとえば、C:\Program Files\Microsoft\R Open\R-3.5.3\bin\R.exe)。

  2. R プロンプトから install コマンドを実行します。

    install.packages('mice') 
    

Power Query エディターで R スクリプトを使用する

Power Query エディターで R を使用する方法を示すために、この例では、.csv ファイルに含まれている株式市場セマンティック モデルを使用します。

  1. EuStockMarkets_NA.csv ファイルをダウンロードします。 ファイルを保存した場所を忘れないようにします。

  2. Power BI Desktop にファイルを読み込みます。 [ホーム] タブで、 [データの取得]>[テキスト/CSV] の順に選択します。

    Screenshot shows the Get data option where you can select Text/CSV.

  3. EuStockMarkets_NA.csv ファイルを選択し、[開く] を選択します。 CSV データが [Text/CSV file](テキスト/CSV ファイル) ダイアログに表示されます。

    Screenshot shows the contents of the selected .csv file.

  4. [読み込み] を選択し、ファイルからデータを読み込みます。 Power BI Desktop でデータが読み込まれると、[フィールド] ウィンドウに新しいテーブルが表示されます。

    Screenshot shows data in the Fields pane.

  5. Power Query エディターを開くには、 [ホーム] リボンで [データの変換] を選択します。

    Screenshot shows the Home ribbon with Transform data highlighted.

  6. [変換] タブから、 [R スクリプトを実行する] を選択します。 [R スクリプトを実行する] エディターが表示されます。 15 行目と 20 行目のデータが欠損しています。この画像に表示されない他の行にも欠損しているデータがあります。 次の手順からは、R によってこれらの行が自動的に補完されるしくみがわかります。

    [Screenshot shows Power Query Editor with Run R Script selected.

  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"
    

    Note

    フィルターが適用された新しいセマンティック モデルを適切に作成するには、output という名前の変数を場合によっては上書きする必要があります。

  8. [OK] を選択します。 Power Query エディターにデータ プライバシーに関する警告が表示されます。

    Screenshot shows data privacy warning with a Continue option.

  9. 警告メッセージ内で、 [続行] を選択します。 [プライバシー レベル] ダイアログが表示されたら、R スクリプトが Power BI サービスで正しく動作するよう、すべてのデータ ソースを [パブリック] に設定します。

    Screenshot shows the Privacy levels dialog with Public privacy selected.

    プライバシー設定とその意味に関する詳細については、「Power BI Desktop のプライバシー レベル」を参照してください。

  10. [保存] を選択してスクリプトを実行します。

    スクリプトを実行すると、次の結果が表示されます。

    Screenshot of results of R script.

    次の図に示すように、表示されるテーブルで [出力] の横にある [テーブル] を選択すると、テーブルが表示されます。

    Screenshot of table results from R script.

    [フィールド] ペインに completedValues という新しい列が表示されます。 SMI の見つからない値の列では、いくつかのデータ要素が不足しています。 次のセクションでは、R がデータ要素の不足を処理するしくみを確認します。

    わずか 5 行の R スクリプトと予測モデルによって、Power Query エディターでは不足値が埋められました。

R スクリプト データからビジュアルを作成する

R スクリプト コードと mice ライブラリで不足値を補うしくみを確認できるビジュアルをこれで作成できます。

Screenshot shows an R script visual that includes missing values and completed values.

完成したすべてのビジュアルを 1 つの Power BI Desktop .pbix ファイルに保存し、データ モデルとその R スクリプトを Power BI サービスで使用することができます。

Note

これらの手順をすべて完了した .pbix ファイルをダウンロードできます。

Power BI サービスに .pbix ファイルをアップロードしたら、サービス データ更新と更新されたビジュアルを有効にするために他の手順を行う必要があります。

  • セマンティック モデルの定期更新を有効にする: セマンティック モデルを含むブックを R スクリプトで定期的に更新する方法については、「スケジュールされた更新の構成」を参照してください。 この記事には、オンプレミス データ ゲートウェイに関する情報も含まれています。

  • ゲートウェイをインストールする: ファイルと R が配置されているマシンにオンプレミス データ ゲートウェイ (個人用モード) がインストールされている必要があります。 Power BI サービスではそのブックにアクセスされ、更新されたすべてのビジュアルが再レンダリングされます。 詳細については、「Power BI で個人用ゲートウェイを使用する」を参照してください。

考慮事項と制限事項

Power Query エディターで作成された R スクリプトを含むクエリにはいくつかの制限事項があります。

  • すべての R データ ソース設定が [パブリック] に設定されている必要があります。 Power Query エディターのクエリの他のすべての手順も、パブリックにする必要があります。

    データ ソース設定にアクセスするには、Power BI Desktop で、 [ファイル][オプションと設定][データ ソース設定] の順に選択します。

    Screenshot shows the Options and Settings dialog where you can select Data source settings.

    [データ ソース設定] ダイアログで、1 つまたは複数のデータ ソースを選択し、[アクセス許可の編集] を選択します。 [プライバシー レベル][パブリック] に設定します。

    Screenshot shows Data source settings dialog where you can edit permissions.

  • R ビジュアルまたはセマンティック モデルの更新をスケジュール設定するには、スケジュール設定された更新を有効にして、ブックと R を含むコンピューターにオンプレミス データ ゲートウェイ (個人用モード) をインストールします。エンタープライズ ゲートウェイを使用して、Power Query の R スクリプトを含むセマンティック モデルを更新することはできません。

R とカスタム クエリを使用し、さまざまなことを実行できます。 探索しながらデータの形を決め、好みの方法で表示する