如何在 Power BI 中使用 Python/R 生成的表?
Posted
技术标签:
【中文标题】如何在 Power BI 中使用 Python/R 生成的表?【英文标题】:how to use the tables generated by Python/R in Power BI? 【发布时间】:2019-02-26 03:56:30 【问题描述】:我正在尝试在 Power BI 中使用 Python/R。但我现在知道如何使用 Python 生成的表了。我什至不知道它在哪里。这是一个例子:
id name score
1 zhao 65
2 qian 98
3 sun 100
4 li 45
5 zhou 98
假设这是我的名为 id 的数据。我使用此按钮 将数据读入 Power BI。
然后我使用此按钮 启动 Power Query 编辑器,我可以在其中通过单击转换中的 来使用 Python/R。
然后我在 Run Python script 中有一个非常简单的 Python 代码:
# 'dataset' holds the input data for this script
import pandas as pd
myid=dataset
myid.loc[:,'id']=myid.loc[:,'id']*100
到目前为止一切正常。但是您可能会注意到我使用“数据集”来表示数据,而不是真正的数据名称“id”。所以我想知道在 Power BI 中数据库名称是否总是默认为“数据集”?
当我完成编码时,我有这个:
您可以看到左侧没有名为“myid”的新表。此外,当我使用按钮 应用此更改时,Power BI Desktop 中发生了一些更改:
您可以看到这里也没有任何新表。那么,如果我想使用 Python 生成的表格来做其他事情,比如绘图,或者在其他地方使用另一个 Python 分析,我该怎么办?
或者,也许这不是在 Power BI 中使用 Pythong 的正确方法?因此,如果我想使用 Python 分析数据并在 Power BI 中对其进行建模。结果可以在Power BI中用于可视化等,我该怎么办?
【问题讨论】:
您可以在高级编辑器中找到的查询的 M 代码中进行编辑吗? @Alexis Olson 你能解释一下吗?我完全不知道 M 代码是什么以及如何使用它来编辑我的查询。谢谢 这里找到的代码:i.stack.imgur.com/NqItV.png 【参考方案1】:这是 R 脚本的 M 代码的样子。
let
Source = Table.FromRows(1,"zhao",65,2,"qian",98,3,"sun",100,4,"li",45,5,"zhou",98,"id","name","score"),
#"Run R script" = R.Execute("# 'dataset' holds the input data for this script#(lf)#(lf)myid <- dataset#(lf)myid$id <- 100*myid$id",[dataset=Source]),
myid = #"Run R script"[Name="myid"][Value]
in
myid
R脚本窗口中的代码很简单
# 'dataset' holds the input data for this script
myid <- dataset
myid$id <- 100*myid$id
当您输入该脚本时,它应该会创建一个或两个新步骤。
只需单击“值”列中的表即可深入到该表(如果它没有自动执行该操作)。
【讨论】:
太棒了!您能否再回答两个问题: 1. 当我在 R 脚本窗口中完成编码时。 M 代码自动更改。所以我不需要自己在M代码中学习,对吧? 2.如果我想在Power BI destop中使用新表(此处为myid),例如可视化。我该怎么做?现在,当我单击“关闭并应用”时,我仍然无法在 Power BI Desktop 中看到新表。不好意思,我刚开始学习 Power BI 2 天。 1.不是。如果您不想,则不需要使用高级编辑器。 2. 上一个应用步骤中显示的表应与加载到 Power BI 中的表相同。如果要加载两个表,则复制查询并仅在一份副本上运行脚本。 这真的很有帮助。谢谢以上是关于如何在 Power BI 中使用 Python/R 生成的表?的主要内容,如果未能解决你的问题,请参考以下文章