ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 14678|回复: 12

[分享] Python in Power BI !!!

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-8-12 11:14 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 张文洲 于 2018-8-12 11:14 编辑

PowerBI 2018年8月8日的更新已经支持Python了,和之前支持R语言一样。
今天分享一下几个方面的细节


幻灯片2.PNG


1.Python是目前最流行的面相对象编程语言之一,在编程语言排行榜上一直位于4-5位。由于语法相对简单,功能相对强大,易入门等原因,一直受到大家的青睐。
如果是没有接触过编程语言的朋友,可以从Python开始。

幻灯片3.PNG

2. Python在PowerBI中主要用于四种场景。
幻灯片4.PNG

数据获取环节可以直接用Python从数据源获取数据,返回到PowerBI进一步处理。

幻灯片5.PNG

数据清洗环节,可以将PowerBI获取的数据源,用Python来进一步处理,比如调用Python的正则函数等。

幻灯片6.PNG

数据可视化环节,可以用Python将PowerBI中的数据进行可视化,调用Python中专业的制图库,制作自定义的可视化统计图表。

幻灯片7.PNG

此外,还可以用Python语句将PowerBI的数据进行输入输出,比如写入外部文件、数据库,进行文件拆分等操作,甚至还可以将PowerBI中的数据进行批量邮件发送等
关于具体应用,不同的库可以实现不同的用途。

幻灯片8.PNG

3. Python in Power BI 的环境配置

首先在管网上下载安装Python程序

幻灯片9.PNG

其次,注意命令行模式和Python交互模式的区别,安装Python以后,pandas库和matplotlib库是必需安装的,在cmd(命令行模式)下输入  pip install pandas  和 pip install matplotlib进行安装。

幻灯片10.PNG

此外,我们可以使用Python自带的IDE或者安装第三方编辑器,比如我用的是PyCharm

幻灯片11.PNG

如果使用第三方编辑器,应该做一些基本的配置

幻灯片12.PNG

最后,我们还要对PowerBI进行一些简单的配置,预览功能中启用Python脚本,并定义Python对应的程序路径和编辑器路径,接下来我们就可以在PowerBI中使用Python了
幻灯片13.PNG

4. Python与PowerBI的数据传递---Dataframe

Python支持5种常用数据类型,Power BI的M语言支持多种数据类型,两种语言直接以DataFrame数据类型进行传递。由于Python本身并没有支持DataFrame,因此Python会自动调用Pandas库。
M将其 Table类型的数据传递给Python,Python会自动将Table转换为Dataframe;Python的处理结果以Dataframe形式输出,M会自动将Dataframe转换为Table格式。

幻灯片14.PNG

M语言中调用Python的主要函数是 Python.Execute,大家可以看看其基本语法
幻灯片15.PNG

以下数使用Python.Execute函数的应用要点:

幻灯片16.PNG

幻灯片17.PNG

幻灯片18.PNG

5. Python in Power Bi 应用实例

下面是我用Python直接抓取我在EH论坛上发过的帖子,直接提交URL和登陆后的Cookie(持久),就可以了

幻灯片19.PNG

获取的数据最终以Dataframe形式返回

幻灯片20.PNG

接下来的案例,是在PowerQuery转换数据的过程中直接调用Python进行数据转换,传递进来的参数是PowerQuery上一步的结果(table),当然我们可以指定为传递其他任意M Table作为输入参数。

幻灯片21.PNG

此外,我们还可以直接在可视化环节,用Python中的matplotlib等库进行可视化制图。

幻灯片22.PNG

Python和R语言在PowerBI中的应用要求是一样的,数据传递的类型都要求是DataFrame,具体的使用场景和使用要求完全相同,会R的朋友,也可以按上述思路进行操作。

以下是一些参考资源
幻灯片23.PNG

详细讲解,如有需要,可以参考以下内容
具体操作视频.rar (173 Bytes, 下载次数: 426)

TA的精华主题

TA的得分主题

发表于 2018-8-12 17:44 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
好贴,顶一个!

TA的精华主题

TA的得分主题

发表于 2018-8-19 10:21 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2018-12-6 15:26 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
兴奋,虽然我还在学习PB和Python,,,

TA的精华主题

TA的得分主题

发表于 2018-12-6 16:02 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
感谢分享!

TA的精华主题

TA的得分主题

发表于 2019-1-17 23:13 来自手机 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2019-1-26 07:17 | 显示全部楼层
太好了,正在学习python,两者结合功能更加强大

TA的精华主题

TA的得分主题

发表于 2019-4-26 23:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
好文,收藏

TA的精华主题

TA的得分主题

发表于 2019-4-27 07:56 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2019-7-15 15:41 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-25 16:07 , Processed in 0.045945 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表