日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Power BI:用Python自動執行數據處理任務

系統 2124 0

全文共 1521 字,預計學習時長 3 分鐘

圖片來源:https://unsplash.com/@yancymin

很多數據分析愛好者都會使用Power BI構建Dashboard、可視化數據。

然而,在對復雜的Dashboard進行建立和改進時,總會通過不同的字段和相應表格,不斷添加或刪除Widget。

經過多次更改后,數據結構會看起來很雜亂——原先幫助構建Dashboard的那些表格和列表變得混亂不堪。一番數據處理后,最終的Dashboard可以包含所有當前使用字段。

不幸的是,在Power BI上實現Dashboard全預覽的唯一方法是,自行瀏覽所有Widget的數據,并手動寫下那些已用字段。

從Power BI手動搜索Widget的后臺數據

但程序員都會努力避免不必要的手動操作,所以我們應該好好鉆研,尋找這方面的解決方案。別擔心,最后的解決方案出奇地簡單!

解構PBIX文件

整理Power BI而不直接使用的第一步是研究.PBIX文件。WinRAR等免費壓縮文件能夠解壓任何.PBIX文件。以上功能給用戶提供了一系列不同的文件格式和目錄選擇,為后續的分析和操控創造可能。

瀏覽解壓文件時,可以看到一個內含“layout”的“Report”的文件夾。這個文件夾包含了有關Dashboard的視覺結構的所有信息,比如:

? 每個Widget的大小和x/y坐標

? 已用字段名稱

? 所有的設置和參數

? 標題

? ……以及其他海量信息

layout文件看起來由一串JSON、表單和詞庫共同構成。我們打算使用Python對所有數據字段和已用Widget進行總結。

Power BI:用Python自動執行數據處理任務_第1張圖片

從文字編輯器里打開layout

構建語法分析器

原本以為一個普通的JSON分析器可以解決問題,但不幸的是JSON內部都是嵌套結構,因此代碼都比設想的長一些,但整體上還是比較簡短。解碼和場景建構之后,得到了較為滿意的結果:分析器成功返回了每一個Widget對應的表格和字段。

然后運用Pandas將以上數據概括到一個數據幀中,刪除了所有重復信息(例如,兩個Widget共用的信息)。這個步驟的結果以簡潔的數據幀呈現,涵蓋了在Dashboard中使用的所有數據:

Power BI:用Python自動執行數據處理任務_第2張圖片

Jupyter Notebook上的輸出數據幀

線上版本

好了,目前所有程序都能從layout文件上復制字符串,再粘貼到Jupyter Notebook上,從而借助方程完美運行。盡管運行得相當順利,整個操作的用戶友好度不是很好,所以下一步就是把該方程轉化為一個實用工具。

繼續用Python的話,可以選擇用Flask構建一個網絡應用程序。

Power BI:用Python自動執行數據處理任務_第3張圖片

工具的線上版本

總的來說,這僅僅是將字符串當作輸入。運行方程,返回數據幀后,它將框架轉換為HTML表格,最終將HTML表格展示給用戶。該工具完全免費,沒有任何廣告。它有時候在Heroku網絡服務器上運行速度會稍慢。

Power BI:用Python自動執行數據處理任務_第4張圖片

最后得到一個顯示了所有Dashboard里使用過的獨有數據字段

接下來做什么?

盡管得到了令人滿意的結果,不過,研究才剛剛開始。還有足夠空間擴展腳本文件,探索解壓文件夾中的其他文件。.PBIX文件能帶來許多新的機會。比如說,可以簡單地對文件進行微調,重新壓縮文件然后用Power BI重新打開——似乎有點成效。這說明用戶可以使用Python腳本編輯Dashboard。

下一步需要做什么?你可以考慮以下方面:

? 追蹤更改

? 自動生成報告

? 創建更廣泛的報告

……

留言 點贊 關注

我們一起分享AI學習與發展的干貨
歡迎關注全平臺AI垂類自媒體 “讀芯術”

(添加小編微信:dxsxbb,加入讀者圈,一起討論最新鮮的人工智能科技哦~)

?


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 象山县| 文安县| 潞西市| 台安县| 成安县| 额敏县| 霍林郭勒市| 大渡口区| 顺平县| 兴国县| 文登市| 松滋市| 许昌县| 缙云县| 靖江市| 财经| 巴中市| 石城县| 灵川县| 土默特右旗| 崇礼县| 蒙城县| 彭阳县| 泗洪县| 怀集县| 吉木乃县| 婺源县| 体育| 松桃| 萍乡市| 阳春市| 雷波县| 应用必备| 太保市| 绥阳县| 孝感市| 平乡县| 泾川县| 荣昌县| 杭锦后旗| 临猗县|