Power BI Desktop で Python スクリプトを実行する

Power BI Desktop で Python スクリプトを直接実行し、生成されたデータセットを Power BI Desktop データ モデルにインポートできます。 このモデルでは、レポートを作成して Power BI サービスで共有することができます。 この記事では、Python スクリプトを有効にし、データをインポートするために実行できる Python スクリプトを作成する方法について説明します。

前提条件

  • Power BI Desktop で Python スクリプトを実行するには、ローカル コンピューターに Python をインストールする必要があります。 Python は、Python Web サイトからダウンロードできます。 現在の Python スクリプト リリースでは、インストール パスで Unicode 文字とスペースがサポートされています。

  • Power BI Python 統合では、次の 2 つの Python パッケージがインストールされている必要があります。 コンソールまたはシェルで、pip コマンドライン ツールを使用してパッケージをインストールします。 pip ツールは、最近の Python バージョンでパッケージ化されています。

    • Pandas は、データの操作と分析を行うためのソフトウェア ライブラリです。 Pandas では、数値テーブルと時系列を操作するためのデータ構造と操作が提供されています。 Power BI にインポートするには、Python データが Pandas データ フレーム内にある必要があります。 データ フレームは、行と列を含むテーブルのような 2 次元のデータ構造です。

    • Matplotlib は、Python とその数値解析拡張機能 NumPy 用のプロット ライブラリです。 Matplotlib には、Tkinter、wxPython、Qt、GTK+ などの Python 用の汎用グラフィカル ユーザー インターフェイス (GUI) アプリケーションにプロットを埋め込むオブジェクト指向 API が用意されています。

    pip install pandas
    pip install matplotlib
    

Python スクリプトを有効にする

Power BI で Python スクリプトを有効にするには、次のようにします。

  1. Power BI Desktop で、 [ファイル]>[オプションと設定]>[オプション]>[Python スクリプト] を選択します。 [Python スクリプトのオプション] ページが表示されます。

    Power BI Desktop の Python スクリプト オプションが表示されているスクリーンショット。

  2. 必要に応じて、[検出された Python ホーム ディレクトリ] で、ローカルの Python インストール パスを指定または編集します。 上の画像では、Python のインストール ローカル パスは C:\Users\Python です。 ローカルの Python インストールが複数ある場合は、使用する Python を選択してください。

  3. [OK] を選択します。

重要

Power BI により、[設定] で指定するディレクトリの python.exe 実行可能ファイルを使用してスクリプトが直接実行されます。 Conda のように、環境の準備に追加の手順を必要とする Python ディストリビューションは、実行が失敗する可能性があります。 これらの問題を回避するには、https://www.python.org の公式の Python ディストリビューションを使用します。もう 1 つの考えられる解決策は、カスタム Python 環境プロンプトから Power BI Desktop を開始することです。

Python スクリプトを作成する

ローカルの Python 開発環境でスクリプトを作成し、それが正常に実行されることを確認します。 Power BI Desktop で Python スクリプトを準備して実行するには、いくつかの制限があります。

  • Pandas データ フレームだけがインポートされるため、Power BI にインポートするデータがデータ フレームで表されていることを確認してください。
  • Python スクリプトの実行時間が 30 分を超えるとタイムアウトになります。
  • ユーザー入力の待機中など、Python スクリプトの対話的呼び出しでスクリプトの実行が停止します。
  • Python スクリプト内で作業ディレクトリを設定する場合は、作業ディレクトリへの相対パスではなく、完全なパスを定義する必要があります。
  • 入れ子になったテーブルはサポートされていません。

Pandas をインポートしてデータ フレームを使用する Python スクリプトのシンプルな例を次に示します。

import pandas as pd
data = [['Alex',10],['Bob',12],['Clarke',13]]
df = pd.DataFrame(data,columns=['Name','Age'])
print (df)

このスクリプトを実行すると、次のように返されます。

     Name   Age
0    Alex  10.0
1     Bob  12.0
2  Clarke  13.0

スクリプトを実行し、データをインポートする

Python スクリプトを実行するには、次のようにします。

  1. Power BI Desktop リボンの [ホーム] グループで、[データの取得] を選択します。

  2. [データの取得] ダイアログ ボックスで、[その他]>[Python スクリプト] を選択し、[接続] を選択します。 Power BI では、インストールされている最新の Python バージョンが Python エンジンとして使用されます。

    [データの取得] で [Python スクリプト] が選択されているスクリーンショット。

  3. [Python スクリプト] 画面で、Python スクリプトを [スクリプト] フィールドに貼り付け、[OK] を選択します。

    [Python スクリプト] ダイアログ ボックスにサンプルの Python スクリプトを貼り付けているスクリーンショット。

  4. スクリプトが正常に実行されると、[ナビゲーター] ウィンドウが表示され、データを読み込むことができます。 df テーブルを選択し、[読み込み] を選択します。

    [ナビゲーター] ウィンドウにデータを読み込んで使用しているスクリーンショット。

Power BI によってデータがインポートされ、それを使用して視覚化とレポートを作成できます。 データを更新するには、Power BI Desktop リボンの [ホーム] グループで [更新] を選択します。 更新すると、Python スクリプトが Power BI Desktop によって再実行されます。

重要

Python がインストールされていない、または特定されていない場合は、警告が表示されます。 また、ローカル コンピューターのインストールが複数ある場合も、警告が表示されることがあります。

Python がインストールされていないことを示す警告のスクリーンショット。

Power BI での Python の詳細については、以下を参照してください。