Usare Python in editor di Power Query

È possibile usare Python, un linguaggio di programmazione ampiamente usato da statistici, data scientist e analisti dei dati, in Power BI Desktop editor di Power Query. Questa integrazione di Python in editor di Power Query consente di eseguire la pulizia dei dati usando Python ed eseguire analisi avanzate di data shaping e analisi nei set di dati, incluso il completamento di dati mancanti, stime e clustering, solo per citarne alcuni. Python è un linguaggio potente e può essere usato in editor di Power Query per preparare il modello di dati e creare report.

Prerequisiti

Prima di iniziare, è necessario installare Python e pandas.

  • Installare Python: per usare Python nei editor di Power Query di Power BI Desktop, è necessario installare Python nel computer locale. È possibile scaricare e installare Python gratuitamente da molte posizioni, tra cui la pagina di download ufficiale di Python e Anaconda.

  • Installare pandas: per usare Python con il editor di Power Query, è necessario installare pandas. Pandas viene usato per spostare i dati tra Power BI e l'ambiente Python.

Usare Python con editor di Power Query

Per illustrare come usare Python in editor di Power Query, prendere questo esempio da un set di dati di mercato azionario, in base a un file CSV che è possibile scaricare da qui e seguire la procedura. I passaggi per questo esempio sono la procedura seguente:

  1. Prima di tutto, caricare i dati in Power BI Desktop. In questo esempio caricare il file EuStockMarkets_NA.csv e selezionare Recupera testo>dati/CSV dalla barra multifunzione Home in Power BI Desktop.

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

  2. Selezionare il file e selezionare Apri e il file CSV viene visualizzato nella finestra di dialogo File CSV.

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

  3. Dopo aver caricato i dati, questi vengono visualizzati nel riquadro Campi in Power BI Desktop.

    Screenshot of the Fields pane, showing the loaded data.

  4. Aprire editor di Power Query selezionando Trasforma dati dalla scheda Home in Power BI Desktop.

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

  5. Nella scheda Trasforma selezionare Esegui script Python e l'editor Esegui script Python viene visualizzato come illustrato nel passaggio successivo. Le righe 15 e 20 presentano dati mancanti, come le altre righe che non è possibile visualizzare nell'immagine seguente. I passaggi seguenti illustrano in che modo Python completa le righe.

    Screenshot of the Transform tab, showing rows of data.

  6. Per questo esempio, immettere il codice script seguente:

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

    Nota

    Per il corretto funzionamento del codice script precedente, è necessario che la libreria pandas sia installata nell'ambiente Python. Per installare pandas, eseguire il comando seguente nell'installazione di Python: pip install pandas

    Quando viene inserita nella finestra di dialogo Esegui script Python, il codice è simile all'esempio seguente:

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

  7. Dopo aver selezionato OK, editor di Power Query visualizza un avviso sulla privacy dei dati.

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

  8. Affinché gli script Python funzionino correttamente nella servizio Power BI, tutte le origini dati devono essere impostate su public. Per altre informazioni sulle impostazioni di privacy e sulle relative implicazioni, vedere Livelli di privacy.

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

    Si noti una nuova colonna nel riquadro Campi denominata completedValues. Si noti che sono presenti alcuni elementi dati mancanti, ad esempio nella riga 15 e 18. Esaminare il modo in cui Python gestisce questa operazione nella sezione successiva.

Con solo tre righe di script Python, editor di Power Query compilato i valori mancanti con un modello predittivo.

Creare oggetti visivi dai dati dello script Python

A questo punto è possibile creare un oggetto visivo per vedere come il codice script Python usando la libreria pandas ha completato i valori mancanti , come illustrato nell'immagine seguente:

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

Al termine dell'oggetto visivo e di qualsiasi altro oggetto visivo che si vuole creare con Power BI Desktop, è possibile salvare il file di Power BI Desktop . I file di Power BI Desktop vengono salvati con l'estensione con estensione pbix . Usare quindi il modello di dati, inclusi gli script Python che ne fanno parte, nel servizio Power BI.

Nota

Vuoi visualizzare un file con estensione pbix completato con questi passaggi? Sei fortunato. È possibile scaricare il file di Power BI Desktop completato usato in questi esempi direttamente qui.

Dopo aver caricato il file con estensione pbix nel servizio Power BI, sono necessari altri due passaggi per abilitare l'aggiornamento dei dati nel servizio e per consentire l'aggiornamento degli oggetti visivi nel servizio. I dati devono accedere a Python per aggiornare gli oggetti visivi. Gli altri passaggi sono i passaggi seguenti:

  • Abilitare l'aggiornamento pianificato per il set di dati. Per abilitare l'aggiornamento pianificato per la cartella di lavoro che contiene il set di dati con script Python, vedere Configurazione dell'aggiornamento pianificato, che include anche informazioni sul gateway personale.
  • Installare Personal Gateway. È necessario un gateway personale installato nel computer in cui si trova il file e in cui è installato Python. Il servizio Power BI deve accedere alla cartella di lavoro ed eseguire nuovamente il rendering degli oggetti visivi aggiornati. Per altre informazioni, vedere Installare e configurare Personal Gateway.

Considerazioni e limitazioni

Esistono alcune limitazioni per le query che includono gli script Python creati in editor di Power Query:

  • Tutte le impostazioni dell'origine dati Python devono essere impostate su Pubblico e anche tutti gli altri passaggi di una query creata in editor di Power Query devono essere pubblici. Per accedere alle impostazioni dell'origine dati, in Power BI Desktop selezionare Opzioni file > e impostazioni Impostazioni > origine dati.

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

    Nella finestra di dialogo Origine dati Impostazioni selezionare le origini dati e quindi selezionare Modifica autorizzazioni e assicurarsi che il livello di privacy sia impostato su Pubblico.

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

  • Per abilitare l'aggiornamento pianificato degli oggetti visivi o del set di dati Python, è necessario abilitare l'aggiornamento pianificato e avere un gateway personale installato nel computer che ospita la cartella di lavoro e l'installazione di Python. Per altre informazioni su entrambi, vedere la sezione precedente di questo articolo, che fornisce collegamenti per altre informazioni su ognuno di essi.

  • Le tabelle nidificate, che sono tabelle di tabelle, non sono attualmente supportate.

Esistono diversi tipi di operazioni che è possibile eseguire con Python e query personalizzate, quindi esplorare e modellare i dati nel modo desiderato.