编辑在Power BI中用作数据输入的python脚本

编辑在Power BI中用作数据输入的python脚本,python,powerbi,Python,Powerbi,我有一个python脚本,并用它在PowerBI中创建了一个数据帧 现在我想在Power BI中编辑该数据框,但不要从头开始作为新数据输入,因为我想将所有图表保留在我的Power BI模型中 例如,在我的旧数据框中,我在脚本中指定了一些日期,因此信息仅限于这些日期。现在我想把日期改成新的,但不想丢失所有的型号 df=df我希望您没有在PowerBI Python可视化中对此进行修改。如果您在Power Query Editor的Transform选项卡下使用Python,那么问题的关键不在于Py

我有一个python脚本,并用它在PowerBI中创建了一个数据帧

现在我想在Power BI中编辑该数据框,但不要从头开始作为新数据输入,因为我想将所有图表保留在我的Power BI模型中

例如,在我的旧数据框中,我在脚本中指定了一些日期,因此信息仅限于这些日期。现在我想把日期改成新的,但不想丢失所有的型号


df=df

我希望您没有在PowerBI Python可视化中对此进行修改。如果您在Power Query Editor的Transform选项卡下使用Python,那么问题的关键不在于Python本身,而在于在Power Query Editor中的queries下的表上单击鼠标右键时可用的引用函数:

试试这个:

1:将以下示例数据保存在csv中,作为
C:\pbidata\src.csv
文件,并使用
Get data>Text/csv将其加载到PowerBI中

A,B,C
1,1*0,100
2,20,200
3,30,300
2:将其显示为表格:

3:通过
编辑查询打开电源查询编辑器

4:添加一些Python

在这里,您可以使用
Transform>runpythonscript
Applied steps
下的
Changed type
步骤后插入Python代码片段。插入以下示例代码:

# 'dataset' holds the input data for this script
import pandas as pd
df=dataset.copy(deep=True)
df['D']=df['C']*2
。。。我会给你这个:

5:假设您现在对此感到满意,并且希望在Power BI桌面上绘制出一个绘图。我正在使用聚集条形图来获取以下信息:

6:现在,正如您所说,如果您希望使用
df['d']=df['C']/4
,但保留相同的数据集、Python脚本和figure
Plot 1、Py脚本1
,请返回到Power Query Editor并使用我在开头提到的功能:

7:并添加另一个Python代码段:

# 'dataset' holds the input data for this script
import pandas as pd
df=dataset.copy(deep=True)
df['D']=df['D']/4
现在我们开始:

现在有两个不同的Python代码段构建在同一个数据集上。您仍然拥有第一个代码段中的数据,并且可以对第二个代码段执行任何操作,而不会弄乱数据源

8:插入另一个图表以验证:

9:通过更改源文件,您可能会从整个过程中获得一些乐趣:

数据:

A,B,C
100,10,100
2,20,200
3,30,150
新绘图:

A,B,C
100,10,100
2,20,200
3,30,150

您可以通过以下步骤编辑python脚本:

  • 打开查询编辑器
  • 在“应用步骤”中,第一个“源”在右侧包含一个小齿轮符号,单击它

您可以将脚本直接更改为Power Query。

您能澄清这个问题吗?它不太清楚?是否要保留旧的df并向现有数据添加新日期的新df?或者只是更新当前数据帧中的日期?@JUAN VAN WERSCH-ANTUNEZ我的建议对您有何影响?我打开Power BI-->新源代码:Python,然后复制粘贴一个Python脚本,然后从中获取一个数据帧。有时,我希望编辑该脚本而不更改数据类型或列数,但过滤信息,例如某些日期的信息,但不希望丢失Power BI报告中的所有工作,而是使用新信息更新它。(顺便说一句,很抱歉回答得太晚,我出去了一个星期)谢谢你的回答!但我的问题是信息的来源。每天我都会在数据库中获取新信息,因此通过python脚本,我可以从数据库中获取我想要的信息,并更改一些日期以提取信息。然后我使用power bi-->New Source:Python复制粘贴一个Python脚本并从中获取一个数据帧。有时我想编辑该脚本(不更改信息类型或列数,只过滤数据),并将此数据帧中的所有交互保留在power bi中。@Juanvanwerschantuntz我仍然认为您可以使用我建议的方法。或者是它的一个版本。如果您感兴趣,我们可以在周四或周五进行聊天,了解更多详情。我要离开电脑几天。你说得对!最好按照你说的处理我的数据。我可以将SQL表/视图导入到Power BI中,然后运行脚本在Power BI中创建新的度量值。谢谢,非常有用。