[點晴永久免費OA]取代 VBA?Python 之父加入微軟三年后,Python 重磅集成到 Excel
整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 數(shù)據(jù)爆炸的時代,你是用 Excel 來做數(shù)據(jù)分析,還是 Python? 好消息!現(xiàn)在再也不用做這道選擇題了。 就在昨日,微軟于官方博客上重磅宣布已將 Python 原生集成到 Excel 公共預(yù)覽版中,這將允許數(shù)據(jù)分析師、工程師、營銷人員亦或是學(xué)習(xí)數(shù)據(jù)科學(xué)的學(xué)生都可以直接使用 Python 代碼、庫在 Excel 中執(zhí)行復(fù)雜的統(tǒng)計分析、高級可視化、預(yù)測分析和機器學(xué)習(xí)等等。
Excel 和 Python 可以同時使用 “你可以使用 Python 繪圖和庫在 Excel 中操作和探索數(shù)據(jù),然后使用 Excel 的公式、圖表和數(shù)據(jù)透視表進一步完善自己的見解”, Microsoft 現(xiàn)代工作總經(jīng)理Stefan Kinnestrand 解釋道,“現(xiàn)在,你可以通過直接從 Excel 功能區(qū)訪問 Python,在熟悉的 Excel 環(huán)境中進行高級數(shù)據(jù)分析?!?/p>
在 Excel 中使用 Python 無縫聚合和可視化你的數(shù)據(jù) 詳細來看,微軟在官方博客中從幾個維度分享了 Excel 中 Python 的不同之處。接下來,我們不妨共同來看一下。 無須下載任何軟件,直接在 Excel 中用 Python 代碼 首先,值得注意的是,Excel 中的 Python 是直接原生集成到 Excel 表格中的。 因此,對于普通用戶而言,打開 Excel 表格,直接在單元格中輸入=PY 函數(shù)就能直接將 Python 代碼輸入到 Excel 表格中,不需要安裝任何其他軟件。 所謂點幾下鼠標,就可完成編碼。這不僅降低了編碼的門檻,還是提升了工作效率。 除此之外,用戶也可以使用 Excel 的內(nèi)置連接器和 Power Query,直接將外部數(shù)據(jù)引入到 Excel 工作流程的 Python 中。而且,Excel 中的 Python 與用戶已經(jīng)熟悉和喜愛的工具例如公式、數(shù)據(jù)透視表和 Excel 圖表都是兼容的。 利用第三方開源發(fā)行版,實現(xiàn) Python in Excel 那要問這一功能是如何實現(xiàn)的? 對此,微軟解釋道,新功能利用了一個開源 Python 的發(fā)行版 Anaconda(https://www.anaconda.com/download),這是一個面向數(shù)據(jù)科學(xué)家和工程師的企業(yè),對初學(xué)者也很友好。 Anaconda 包括許多預(yù)打包庫和軟件包,如 pandas、Matplotlib、scikit-learn、NumPy 和 SciPy。 Python in Excel 利用在 Azure 中運行的 Python Anaconda Distribution,由 Anaconda 安全構(gòu)建、測試和支持。Anaconda 提供的 Python 支持在 Excel 中使用 Python 進行各種分析。 安全性如何保證? 另外,為了保證安全性,Python in Excel 在微軟云上運行,計算結(jié)果會返回到工作表中,包括圖表和可視化效果。這使得用戶在 Microsoft 365 體驗中具有企業(yè)級的安全性。 Python 代碼通過安全軟件供應(yīng)鏈,使用 Azure 容器實例和來自 Anaconda 的安全源代碼包,在自己的管理程序隔離容器中運行。 Excel 中的 Python 可以防止 Python 代碼知道用戶個人的身份,并在各自獨立的容器中進一步隔離地從互聯(lián)網(wǎng)打開工作簿,從而保護用戶的數(shù)據(jù)隱私。 工作簿中的數(shù)據(jù)只能通過內(nèi)置的 xl() Python 函數(shù)發(fā)送,Python 代碼的輸出只能作為 =PY() Excel 函數(shù)的結(jié)果返回。 同一個團隊之間無縫協(xié)作 更為強大的是,微軟在博客上分享道,同一個團隊的成員可以與基于 Python in Excel 的分析進行無縫交互并刷新分析結(jié)果,而無需擔(dān)心安裝其他工具、Python 運行時或管理庫以及相互之間的依賴關(guān)系。 用戶可以使用自己喜歡的協(xié)作工具(如 Microsoft Teams 和 Microsoft Outlook)共享工作簿,并像在 Excel 中一樣,通過評論、@ 提及和與同事共同撰寫等方式無縫協(xié)作。
Excel 中的 Python 到底能干什么? 在博客上,微軟還舉了幾個示例來分享 Excel 中的 Python 詳細用途。 其一,可視化。 在 Excel 中,用戶可直接利用 Python 豐富的第三方庫如 Matplotlib 和 seaborn 來創(chuàng)建各種圖表,包括構(gòu)建傳統(tǒng)的條形圖、線圖、熱圖、小提琴圖和群圖等等。
其二,機器學(xué)習(xí)、預(yù)測分析。 利用 scikit-learn 和 statsmodels 等 Python 庫的功能來應(yīng)用流行的機器學(xué)習(xí)、預(yù)測分析和預(yù)測技術(shù),例如回歸分析、時間序列建模等。
使用 Python 和 Excel LAMBDA 預(yù)測天氣的機器學(xué)習(xí)模型 其三,數(shù)據(jù)清理。 有效利用先進的數(shù)據(jù)清理技術(shù),例如查找缺失值、標準化格式、刪除重復(fù)項以及采用正則表達式等技術(shù)進行基于模式的轉(zhuǎn)換。 使用正則表達式提取日期 Python 之父 Guido van Rossum:三年前加入微軟時,我做夢也想不到會有這種可能 不得不說,微軟如今能夠?qū)⒅髁鞯木幊陶Z言 Python 集成到主流的辦公軟件中,背后或許離不開 Python 之父 Guido van Rossum 的努力。 2020 年 11 月,耐不住退休生活的寂寞,Guido Van Rossum 發(fā)推表示:「退休生活太無聊了,我決定加入微軟的開發(fā)者部門!」 那時,他只是透露加入微軟是要繼續(xù)開發(fā)優(yōu)化 Python,讓這一技術(shù)變得更加重要,并且不僅僅是在 Windows 上。 時隔三年,我們看到微軟正在深度擁抱 Python。據(jù)微軟透露,Guido van Rossum 在此次更新中,幫助定義了 Excel 中 Python 的架構(gòu)。 Guido van Rossum 也表示,"我很高興,Python 和 Excel 的這種出色、緊密的集成現(xiàn)在終于有了用武之地。我希望兩個社區(qū)都能在這次合作中找到有趣的新用途,從而增強每個合作伙伴的能力。當我三年前加入微軟時,我做夢也想不到會有這種可能。Excel 團隊非常出色!" 開發(fā)者振奮 當前,Excel 中的 Python 主要面向 Microsoft 365 Insiders 推出,將從內(nèi)部版本 16818 開始,如今只能在桌面版 Excel 中使用,微軟表示,會在晚些時候推送到其他平臺。 如果你已經(jīng)加入了 Microsoft 365 Insider Program(https://insider.microsoft365.com/join/windows),只需安裝 Excel 的最新 Insider 版本后,打開一個空白工作簿,然后執(zhí)行以下步驟,就可以嘗鮮了。 選擇功能區(qū)中的公式。 選擇插入 Python。 在出現(xiàn)的對話框中選擇嘗試預(yù)覽按鈕。 不過,微軟也表示,在預(yù)覽期間,Excel 中的 Python 將包含在 Microsoft 365 訂閱中,但在預(yù)覽結(jié)束后,“如果沒有付費許可證,某些功能將受到限制”。 對于這一功能發(fā)布,多數(shù)開發(fā)者感到興奮。 一位微軟前員工在 HN 評論道: “作為一名曾試圖將 Python 引入 Excel 的前 Excel 開發(fā)人員,今天看到這篇文章真是驚喜萬分。 7 年多前,我選擇離開 Excel 團隊。當時我老板的老板知道我對將 Python 帶入 Excel 感興趣,于是給了我一個機會,如果我選擇留下的話。然而,原本為期 6 個月的項目變成了長達 3 年的項目,Python 部分逐漸消失,我們最終在 Excel 中啟用了 Javascript 自定義函數(shù)。 就 Python 而言,當時我們也是在 "云"中運行(AzureML v1),不過后來就是否應(yīng)在本地運行的問題上,我們也進行了一些反復(fù)討論。我認為讓 Python 部分消失的原因是我們的合作伙伴 AzureML 團隊重新鍛造、重新發(fā)布、重新雇用,我們失去了一位 PM,我們的工作引起了另一個合作伙伴團隊的注意,他們意識到可以使用我們的代碼在進程外執(zhí)行他們的 Javascript。因此,我花了很多時間來確保該功能的成功發(fā)布,我想,這對 Python 是不利的。 我得到了一些優(yōu)秀工程師的幫助,學(xué)到了很多東西。這項工作的核心是修改 Excel 的計算引擎,允許函數(shù)異步計算,這樣用戶就可以在遠程端點(無論是 Javascript、Python 還是其他)計算的同時繼續(xù)處理電子表格的其他部分。以前,電子表格會在計算運行時鎖定,這對于長期運行的無限制計算來說并不酷。不知道我們當時構(gòu)建的任何功能是否都被納入了這項新功能。 現(xiàn)在,非常高興看到這一點,并期待著試用它?!?/p> 另一位開發(fā)者@cableshaft 表示: “我希望它不只是由微軟云提供支持,還能支持在本地運行 Python,但無論如何,我認為這仍將是一個巨大的項目,它將極大地推動 Excel 的現(xiàn)代化。 我想到我以前做的一個項目,就是建立一個分析網(wǎng)站,內(nèi)部只有少數(shù)幾個人使用,如果當時有這樣的東西,就能很好地滿足他們的需求?!?/p> 不過,也有開發(fā)者稱,隨著 Python 進入了 Excel,成為了壓死 VBA 宏的最后一根稻草。 ———————————————— 版權(quán)聲明:本文為CSDN博主「CSDN資訊」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。 原文鏈接:https://blog.csdn.net/csdnnews/article/details/132463496 該文章在 2023/8/28 10:05:09 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |