前文講過Power BI回寫數據庫的多種方式的操作:
不過都是在powerquery中實現的,這對於很多不太熟悉M的同學來說,是一項巨大的挑戰。
而且,在一個Power BI報告中,一般情況下我們都是通過寫度量值的方式進行數據分析與展示,那麼有沒有辦法將度量值的結果也寫回數據庫呢?
答案是肯定的。
我們在【Power BI中使用Python可視化】一節中說過,創建一個Python可視化對象時,Power BI會自動將所要分析的字段生成一個DataFrame格式的dataset數據,傳遞給Python進行處理。
而要將DataFrame進行輸出,這個想必大家都比較清楚吧。
我們先來測試一個簡單的,將數據導出為excel。你可能會說,視覺對象可以直接導出excel文件啊,幹嘛要用Python這個第三方呢。
嘿嘿。畢竟原配再有氣質,中國最大的電商平臺天貓淘寶蔣總裁不還是被爆出招惹了“第三方”的張網紅。
畢竟張網紅都把懷孕初期口服的葉酸擺到檯面上了,這說明“第三方”能實現的功能多呀。
話說回來,我們是先通過導出excel來說明數據回寫可以走Python這個“第三方“,這就為後續的其他操作創造了可能。
首先我們將要分析的字段拖入可視化中:
點擊Python腳本可視化對象,DataFrame格式數據就準備好了:
粘貼腳本只有一句:
dataset.to_excel(r"D:\powerbi練習\powerbi內置調查問卷\問卷答案.xlsx",index=False)
結果就是導出了excel文件,打開這個文件:
發現裡面躺著一行數據,因為我切片器只選擇了一行數據。
既然我們看到能用Python輸出為excel文件,那麼學過之前幾篇文章的同學,輸出到SQL也不是難事吧。
<code>import
pymysqlimport
pandasas
pd db = pymysql.connect("localhost"
,"root"
,"xxxxxxxx"
,"test1"
) cursor = db.cursor() query ='insert into powerbi內置調查問卷`(`問題1:你從哪裡看到【學謙數據運營】的這篇文章,問題2:你是否喜歡【學謙數據運營】公眾號/專欄發佈的內容`,`問題3:你希望【學謙數據運營】後續多發表哪些方面的內容,USERNAME,時間`)values(%s,%s,%s,%s,%s)'
q1=dataset.iat[0
,0
] q2=dataset.iat[0
,1
] q3=dataset.iat[0
,2
] username=dataset.iat[0
,3
] time0=dataset.iat[0
,4
] values = (q1,q2,q3,username,time0) cursor.execute(query, values) cursor.close() db.commit() db.close() dataset.to_excel(r"D:\powerbi練習\powerbi內置調查問卷\問卷答案.xlsx"
,index=False
)/<code>
這樣再導入數據庫中的數據,點擊提交後一刷新就會有最新的數據了。