Usar Python no Power Query Editor
Pode utilizar Python, uma linguagem de programação amplamente utilizada por estatísticos, cientistas de dados e analistas de dados, no Power BI Desktop Power Query Editor. Esta integração do Python no Power Query Editor permite-lhe executar limpeza de dados utilizando Python e executar modelação e análise de dados avançadas em conjuntos de dados, incluindo a conclusão de dados em falta, previsões e clustering, apenas para citar alguns. Python é uma linguagem poderosa e pode ser usada no Power Query Editor para preparar seu modelo de dados e criar relatórios.
Pré-requisitos
Você precisará instalar Python e pandas antes de começar.
Instalar Python - Para usar Python no Power Query Editor do Power BI Desktop, você precisa instalar o Python em sua máquina local. Você pode baixar e instalar o Python gratuitamente de muitos locais, incluindo a página oficial de download do Python e o Anaconda.
Instalar pandas - Para usar Python com o Editor do Power Query, você também precisará instalar pandas. Pandas é usado para mover dados entre o Power BI e o ambiente Python.
Usar Python com o Power Query Editor
Para mostrar como usar Python no Power Query Editor, pegue este exemplo de um conjunto de dados do mercado de ações, com base em um arquivo CSV que você pode baixar aqui e acompanhar. As etapas para este exemplo são o seguinte procedimento:
Primeiro, carregue seus dados no Power BI Desktop. Neste exemplo, carregue o arquivo EuStockMarkets_NA.csv e selecione Obter Texto de dados>/CSV na faixa de opções Página Inicial no Power BI Desktop.
Selecione o arquivo e selecione Abrir, e o CSV é exibido na caixa de diálogo do arquivo CSV.
Depois que os dados forem carregados, você os verá no painel Campos no Power BI Desktop.
Abra o Editor do Power Query selecionando Transformar dados na guia Página Inicial no Power BI Desktop.
Na guia Transformar, selecione Executar Script Python e o editor Executar Script Python será exibido conforme mostrado na próxima etapa. As linhas 15 e 20 sofrem com a falta de dados, 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ê.
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"]
Nota
Você precisa ter a biblioteca pandas instalada em seu ambiente Python para que o código de script anterior funcione corretamente. Para instalar pandas, execute o seguinte comando na instalação do Python:
pip install pandas
Quando colocado na caixa de diálogo Executar script Python , o código se parece com o exemplo a seguir:
Depois de selecionar OK, o Power Query Editor apresenta um aviso sobre a privacidade dos dados.
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 configurações de privacidade e suas implicações, consulte Níveis de privacidade.
Observe uma nova coluna no painel Campos chamada completedValues. Observe que há alguns elementos de dados ausentes, como nas linhas 15 e 18. Dê uma olhada em como o Python lida com isso na próxima seção.
Com apenas três linhas de script Python, o Power Query Editor preencheu os valores em falta com um modelo preditivo.
Crie visuais a partir de dados de script Python
Agora podemos criar um visual para ver como o código de script Python usando a biblioteca pandas completou os valores ausentes, como mostrado na imagem a seguir:
Quando esse visual estiver concluído e quaisquer outros elementos visuais que você queira criar usando o Power BI Desktop, você poderá salvar o arquivo do Power BI Desktop. Os ficheiros do Power BI Desktop são guardados com a extensão de nome de ficheiro .pbix . Em seguida, use o modelo de dados, incluindo os scripts Python que fazem parte dele, no serviço do Power BI.
Nota
Quer ver um arquivo .pbix concluído com essas etapas concluídas? Você está com sorte. Você pode baixar o arquivo completo do Power BI Desktop usado nesses exemplos aqui.
Depois de carregar o arquivo .pbix para o serviço do Power BI, mais algumas etapas são necessárias para permitir que os dados sejam atualizados no serviço e para permitir que os visuais sejam atualizados no serviço. Os dados precisam de acesso ao Python para que os visuais sejam atualizados. As outras etapas são as seguintes:
- Habilite a atualização agendada para o conjunto de dados. Para habilitar a atualização agendada para a pasta de trabalho que contém seu conjunto de dados com scripts Python, consulte Configurando a atualização agendada, que também inclui informações sobre o Personal Gateway.
- Instale o Personal Gateway. Você precisa de um Personal Gateway instalado na máquina onde o arquivo está localizado e onde o Python está instalado. O serviço do Power BI deve acessar essa pasta de trabalho e renderizar novamente todos os elementos visuais atualizados. Para obter mais informações, consulte instalar e configurar o Personal Gateway.
Considerações e limitações
Existem algumas limitações para consultas que incluem scripts Python criados no Power Query Editor:
Todas as configurações da fonte de dados Python devem ser definidas como Public, e todas as outras etapas em uma consulta criada no Power Query Editor também devem ser públicas. Para aceder às definições da origem de dados, no Power BI Desktop , selecione Opções de Ficheiro > e definições > Definições da fonte de dados.
Na caixa de diálogo Configurações da Fonte de Dados, selecione as fontes de dados e, em seguida, selecione Editar Permissões... e verifique se o Nível de Privacidade está definido como Público.
Para habilitar a atualização agendada de seus visuais ou conjunto de dados do Python, você precisa habilitar a atualização agendada e ter um Personal Gateway instalado no computador que hospeda a pasta de trabalho e a instalação do Python. Para obter mais informações sobre ambos, consulte a seção anterior deste artigo, que fornece links para saber mais sobre cada um deles.
Atualmente, não há suporte para tabelas aninhadas, que são tabelas de tabelas.
Há todos os tipos de coisas que você pode fazer com Python e consultas personalizadas, então explore e molde seus dados da maneira que você deseja que eles apareçam.