Usar o Python no Editor do Power Query

Você pode usar Python, uma linguagem de programação amplamente usada por estatísticos, cientistas de dados e analistas de dados, no Editor do Power Query do Power BI Desktop. Essa integração de Python ao Editor do Power Query permite executar a limpeza de dados usando Python e executar análise e modelagem de dados avançadas em conjuntos de dados, inclusive completar dados ausentes, fazer previsões e clustering, apenas para citar alguns exemplos. Python é uma linguagem poderosa e pode ser usada no Editor do Power Query para preparar seu modelo de dados e criar relatórios.

Pré-requisitos

Você precisará instalar o Python e o Pandas antes de começar.

  • Instale o Python - para usar o Python no Editor do Power Query do Power BI Desktop, você precisará instalar o Python no computador local. Você pode baixar e instalar o Python gratuitamente em vários locais, incluindo a página de download do Python Oficial e o Anaconda.

  • Instale o Pandas - para usar o Python com o Editor do Power Query, você também precisará instalar o Pandas. O Pandas é usado para mover dados entre o Power BI e o ambiente do Python.

Usar o Python com o Editor do Power Query

Para mostrar como usar o Python no Editor do Power Query, veja um exemplo de um conjunto de dados do mercado de ações, com base em um arquivo CSV que você pode baixar aqui para acompanhar o exemplo. As etapas deste exemplo são os seguintes procedimentos:

  1. Primeiro, carregue os dados no Power BI Desktop. Neste exemplo, carregue o arquivo EuStockMarkets_NA.csv e selecione Obter dados>Texto/CSV na faixa de opções Página Inicial do Power BI Desktop.

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

  2. Selecione o arquivo e selecione Abrir. O CSV será exibido na caixa de diálogo Arquivo CSV.

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

  3. Depois que os dados forem carregados, você os verá no painel Campos no Power BI Desktop.

    Screenshot of the Fields pane, showing the loaded data.

  4. Abra o Editor do Power Query selecionando Transformar dados na guia Página Inicial no Power BI Desktop.

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

  5. Na guia Transformar, selecione Executar Script Python, e o editor Executar Script Python será exibido, como mostrado na próxima etapa. As linhas 15 e 20 têm dados ausentes, assim como outras linhas que você não pode ver na imagem a seguir. As etapas a seguir mostram como o Python completa essas linhas para você.

    Screenshot of the Transform tab, showing rows of data.

  6. Para este exemplo, insira o seguinte código de script:

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

    Observação

    Você precisa da biblioteca pandas instalada em seu ambiente Python para que o código do script anterior funcione corretamente. Para instalar o pandas, execute o comando a seguir em sua instalação do Python: pip install pandas

    Quando colocado na caixa de diálogo Executar Script Python, o código é semelhante ao seguinte exemplo:

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

  7. Após selecionar OK, o Editor do Power Query exibirá um aviso sobre a privacidade dos dados.

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

  8. Para que os scripts Python funcionem corretamente no serviço do Power BI, todas as fontes de dados precisam ser definidas como públicas. Para obter mais informações sobre as configurações de privacidade e suas implicações, confira Níveis de privacidade.

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

    Observe uma nova coluna no painel Campos chamada completedValues. Observe que há alguns elementos de dados ausentes, como nas linhas 15 e 18. Veja como o Python lida com isso na próxima seção.

Com apenas três linhas de script Python, o Editor do Power Query preencheu os valores ausentes com um modelo preditivo.

Criar visuais de dados de script Python

Agora, podemos criar um visual para ver como o código de script Python preencheu os valores ausentes usando a biblioteca pandas, conforme mostrado na imagem a seguir:

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

Depois que esse visual estiver concluído e quaisquer outros visuais que você queira criar usando o Power BI Desktop, você poderá salvar o arquivo do Power BI Desktop. Os arquivos do Power BI Desktop salvos com a extensão de nome de arquivo .pbix. Em seguida, use o modelo de dados, incluindo os scripts Python que fazem parte dele, no serviço do Power BI.

Observação

Quer ver um arquivo .pbix concluído com essas etapas concluídas? Você está com sorte. Você pode baixar o arquivo concluído do Power BI Desktop usado nesses exemplos aqui.

Depois que você carregar o arquivo .pbix no serviço do Power BI, algumas etapas serão necessárias para habilitar a atualização de dados no serviço e habilitar os elementos visuais para serem atualizados no serviço. Os dados precisam de acesso ao Python para que os visuais sejam atualizados. As outras etapas são as seguintes etapas:

  • Habilitar a atualização agendada para o conjunto de dados. Para habilitar a atualização agendada para a pasta de trabalho que contém o conjunto de dados com scripts Python, confira Configurar a atualização agendada, que também inclui informações sobre o Gateway Pessoal.
  • Instale o Gateway Pessoal. Você precisa de um Gateway Pessoal instalado no computador onde o arquivo está localizado e onde o Python está instalado. O serviço do Power BI deve acessar essa pasta de trabalho e renderiza novamente todos os visuais que foram atualizados. Para obter mais informações, confira instalar e configurar o Gateway Pessoal.

Considerações e limitações

Existem algumas limitações para consultas que incluem scripts Python criados no Editor do Power Query:

  • Todas as configurações de fonte de dados Python precisam ser definidas como Públicas, e todas as outras etapas em uma consulta criada no Editor do Power Query também precisam ser públicas. Para obter as configurações de fonte de dados, no Power BI Desktop, selecione Arquivo > Opções e configurações > Configurações de fonte de dados.

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

    Na caixa de diálogo Configurações de Fonte de Dados, selecione a fontes de dados e, em seguida, selecione Editar Permissões... e verifique se o Nível de Privacidade está definido como Público.

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

  • Para habilitar a atualização agendada do conjunto de dados ou dos elementos visuais do Python, você precisa habilitar a Atualização agendada e ter um Gateway Pessoal instalado no computador que hospeda a pasta de trabalho e a instalação do Python. Para obter mais informações sobre ambos, confira a seção anterior deste artigo, que fornece links, para saber mais sobre cada um.

  • No momento, não há suporte para tabelas aninhadas que são tabela de tabelas.

Há inúmeras coisas que você pode fazer com Python e consultas personalizadas, então, explore e modele seus dados da maneira como deseja que eles sejam mostrados.