Freigeben über


Verwenden von Python im Power Query-Editor

Sie können die häufig von Statistikern, Data Scientists und Data Analysts verwendete Programmiersprache Python im Power Query-Editor von Power BI Desktop verwenden. Dank der Integration von Python in den Power Query-Editor können Sie mithilfe von Python Daten bereinigen, erweiterte Datenstrukturierungen und Analysen in Datasets ausführen (einschließlich der Ergänzung fehlender Daten, Vorhersagen und des Clustering, um nur einige der Möglichkeiten zu nennen). Python ist eine leistungsfähige Sprache, die im Power Query-Editor zum Vorbereiten des Datenmodells und Erstellen von Berichten verwendet werden kann.

Voraussetzungen

Sie müssen Python und Pandas installieren, bevor Sie beginnen.

  • Installieren von Python: Damit Sie Python im Power Query-Editor von Power BI Desktop verwenden können, müssen Sie Python auf dem lokalen Computer installieren. Python können Sie an vielen Stellen im Internet kostenlos herunterladen und installieren, u.a. von der Offiziellen Python-Downloadseite und aus Anaconda.

  • Installieren von Pandas: Um Python mit dem Power Query-Editor zu verwenden, müssen Sie auch Pandas installieren. Pandas wird verwendet, um Daten zwischen Power BI und der Python-Umgebung zu verschieben.

Verwenden von Python mit dem Power Query-Editor

Dieses Beispiel aus einem Aktiendataset wird verwendet, um die Verwendung von Python im Power Query-Editor zu veranschaulichen. Dieses Dataset basiert auf einer CSV-Datei, die Sie hier herunterladen können, um die Vorgehensweise nachzuvollziehen. Die Schritte für dieses Beispiel sind folgende:

  1. Laden Sie zunächst die Daten in Power BI Desktop. Laden Sie in diesem Beispiel die Datei EuStockMarkets_NA.csv, und wählen Sie die Option Daten abrufen>Text/CSV auf dem Menüband Startseite in Power BI Desktop aus.

    Screenshot of the Get Data ribbon in Power BI Desktop, showing the CSV selection.

  2. Wählen Sie die Datei aus und dann Öffnen aus. Anschließend wird die CSV-Datei im Dialogfeld CSV-Datei angezeigt.

    Screenshot of the CSV file dialog, showing the selected CSV.

  3. Nachdem die Daten geladen wurden, werden sie in Power BI Desktop im Bereich Felder angezeigt.

    Screenshot of the Fields pane, showing the loaded data.

  4. Klicken Sie in Power BI Desktop auf der Registerkarte Startseite auf Daten transformieren, um den Power Query-Editor zu öffnen.

    Screenshot of the Power Query Editor in Power BI Desktop, showing the Transform data selection.

  5. Wählen Sie auf der Registerkarte Transformieren die Option Python-Skript ausführen aus. Der Editor Python-Skript ausführen wird wie im nächsten Schritt dargestellt angezeigt. In Zeile 15 und 20 fehlen Daten. Dies trifft auch für andere Zeilen zu, die in der folgenden Abbildung nicht dargestellt sind. Die unten aufgeführten Schritte verdeutlichen, wie Python diese Zeilen automatisch vervollständigt.

    Screenshot of the Transform tab, showing rows of data.

  6. Geben Sie für dieses Beispiel folgenden Skriptcode ein:

    import pandas as pd
    completedData = dataset.fillna(method='backfill', inplace=False)
    dataset["completedValues"] =  completedData["SMI missing values"]
    

    Hinweis

    In der Python-Umgebung muss das Paket pandas installiert sein, damit der oben gezeigte Skriptcode ordnungsgemäß ausgeführt wird. Führen Sie zum Installieren des Pakets "pandas" in der Python-Installation den folgenden Befehl aus: pip install pandas

    Wenn der Code in das Dialogfeld Python-Skript ausführen eingefügt wird, sieht er wie im folgenden Beispiel aus:

    Screenshot of the Run Python Script dialog, showing the script code.

  7. Nach der Auswahl von OK wird im Power Query-Editor ein Hinweis zum Datenschutz angezeigt.

    Screenshot of the Power Query Editor pane, showing the warning about data privacy.

  8. Für die ordnungsgemäße Ausführung von Python-Skripts im Power BI-Dienst müssen alle Datenquellen auf Öffentlich festgelegt werden. Weitere Informationen zu den Datenschutzeinstellungen und deren Bedeutung finden Sie unter Sicherheitsstufen.

    Screenshot of the Privacy levels dialog, showing that Public is set.

    Im Bereich Felder wird eine neue Spalte mit dem Namen completedValues angezeigt. Beachten Sie, dass einige Datenelemente fehlen, z.B. in Zeile 15 und 18. Im nächsten Abschnitt sehen Sie, wie dies von Python behandelt wird.

Mit nur drei Zeilen Python-Skript konnte der Power Query-Editor die fehlenden Werte anhand eines Vorhersagemodells einfügen.

Erstellen von visuellen Elementen aus Python-Skript-Daten

Wir können jetzt ein visuelles Element erstellen, um zu sehen, wie der Python-Skript-Code mithilfe des Pakets pandas die fehlenden Werte eingefügt hat, wie in der folgenden Abbildung dargestellt:

Screenshot of the visual, showing original data and completed missing values of the pandas library.

Sobald dieses und alle anderen Visuals, die Sie mit Power BI Desktop erstellen möchten, fertig sind, können Sie die Power BI Desktop-Datei speichern. Power BI Desktop Dateien mit der Dateinamenerweiterung .pbix gespeichert werden. Verwenden Sie dann das Datenmodell, einschließlich der Python-Skripts, die Teil davon sind, im Power BI-Dienst.

Hinweis

Möchten Sie eine fertige PBIX-Datei nach Abschluss dieser Schritte sehen? Aber keine Sorge: Dann können Sie die vollständige Power BI Desktop-Datei, die in diesen Beispielen verwendet wurde, hier herunterladen.

Nachdem Sie die PBIX-Datei in den Power BI-Dienst hochgeladen haben, sind einige zusätzliche Schritte erforderlich, um die Datenaktualisierung im Dienst und das Aktualisieren der visuellen Elemente im Dienst zu aktivieren. Die Daten benötigen Zugriff auf Python, damit Visuals aktualisiert werden können. Die anderen Schritte sind folgende:

  • Aktivieren Sie die geplante Aktualisierung für das Dataset. Informationen zum Aktivieren geplanter Aktualisierungen für die Arbeitsmappe, die das Dataset mit Python-Skripts enthält, finden Sie unter Konfigurieren geplanter Aktualisierungen. Dort finden Sie auch Informationen über Personal Gateway.
  • Verwenden Sie das persönliche Gateway. Auf dem Computer, auf dem sich die Datei befindet und auf dem Python installiert ist, muss ein Personal Gateway installiert sein. Der Power BI-Dienst muss auf diese Arbeitsmappe zugreifen und alle aktualisierten Visuals neu redern. Weitere Informationen finden Sie unter Installieren und Konfigurieren von persönlichen Gateways.

Überlegungen und Einschränkungen

Für Abfragen, die im Power Query-Editor erstellte Python-Skripts enthalten, gelten einige Einschränkungen:

  • Alle Python-Datenquelleneinstellungen müssen auf Öffentlich festgelegt sein, und alle anderen Schritte einer im Power Query-Editor erstellten Abfrage müssen ebenfalls öffentlich sein. Klicken Sie in Power BI Desktop auf Datei > Optionen und Einstellungen > Datenquelleneinstellungen.

    Screenshot of the File menu in Power BI Desktop, showing the Data source settings selection.

    Wählen Sie im Dialogfeld Datenquelleneinstellungen die Datenquellen und anschließend Berechtigungen bearbeiten aus, und stellen Sie sicher, dass die Datenschutzebene auf Öffentlich festgelegt ist.

    Screenshot of the Data source settings dialog, showing the Privacy Level is set to Public.

  • Um geplante Aktualisierungen der visuellen Python-Elemente oder des Datasets zu ermöglichen, müssen Sie Geplante Aktualisierung aktivieren, und auf dem Computer, auf dem sich die Arbeitsmappe und die Python-Installation befinden, muss Personal Gateway installiert sein. Weitere Informationen zu beiden Features finden Sie im vorherigen Abschnitt dieses Artikels, der Links zu weiteren Informationen über jedes dieser Features enthält.

  • Geschachtelte Tabelle, die Tabellen von Tabellen sind, werden derzeit nicht unterstützt.

Python und benutzerdefinierte Abfragen bieten Ihnen unzählige Möglichkeiten – Sie können Daten analysieren und genau so strukturieren, wie sie dargestellt werden sollen.