这是一个自我回答的帖子。为什么?因为缺少数据样本,所以Power BI中的许多问题都无法回答。此外,许多人似乎想知道如何使用Python在Power BI中编辑数据表。当然,全世界都需要在Power BI中更广泛地使用Python。有人认为您必须将Python代码段应用于其他位置加载的现有表。我对这篇文章的回答将向您展示如何在原本为空的Power BI文件中用几行代码构建一个(相当大的)数据样本。
那么,如何在Power BI中使用Python构建数据样本并对其进行更改?
答案 0 :(得分:3)
我将向您展示如何构建包含分类和数值的10000
行的数据集。我分别使用Python库numpy和pandas进行数据生成和表操作。下面的代码段简单地从两个列表中10000
绘制了一个随机元素,以构建带有一些街道和城市名称的两列,并将一个随机数列表添加到混合中。然后,我使用熊猫将数据整理到一个数据框中。在Power BI Power Query Editor
中使用Python,您的输入必须是表格,而输出必须是pandas数据框。
Python代码段:
import numpy as np
import pandas as pd
np.random.seed(123)
streets=['Broadway', 'Bowery', 'Houston Street']
cities=['New York', 'Chicago', 'Baltimore']
rows = 1000
lst_cities=np.random.choice(cities,rows).tolist()
lst_streets=np.random.choice(streets,rows).tolist()
lst_numbers= np.random.randint(low=0, high=100, size=rows).tolist()
df_dataset=pd.DataFrame({'City':lst_cities,
'Street':lst_streets,
'ID':lst_numbers})
df_metadata = pd.DataFrame([df_dataset.shape])
Power BI:
在Power BI桌面中,单击Enter Data
转到Power Query Editor
。在下面的对话框窗口中,除了单击OK
以外,什么都不做。结果是一个空表和Applied steps
下的两个步骤:
现在,使用Transform > Run Python Script
,在上方插入代码段,然后点击OK
来获取此信息:
您现在有了一个包含2列3行的初步表。这是在Power BI中实现Python的相当整洁的细节。运行代码段后,您可以使用以下三种不同的数据集。 Dataset
是默认构造的,但由于我们是从一个空表开始的,所以它是空的。如果我们从其他数据开始,则Run Python Script
的第一行说明了此表# 'dataset' holds the input data for this script
的用途。它以熊猫数据框的形式构造。最后一张表df_metadata
只是我们真正感兴趣的数据集的简要描述:df_dataset
,但我将其添加到了混合中以说明您在片段将向您提供。通过单击名称旁边的Table
,选择继续处理的表。
就是这样!现在,您有了一个混合数据类型表,可以继续使用Python或Power BI本身进行工作:
从这里您可以:
Reference
下的Table
创建Queries
,继续使用其他版本: