知乎上有個熱門提問,日常工作中Python Pandas是否能取代Excel VBA?
我的建議是,兩者是互補關係,不存在誰取代誰。
複雜資料分析挖掘用Python Pandas,日常簡單資料處理用Excel VBA。
從資料處理分析能力來看,Python Pandas肯定是能取代Excel VBA的,而且要遠遠比後者強大。
但從便利性、傳播性、市場認可度來看,Excel VBA在職場工作上還是無法取代的。
因為Excel符合絕大多數人的使用習慣,使用成本更低。
就像Photoshop能修出更專業的照片,為什麼大部分人在用美圖秀?道理是一樣的。
從市場接受度來看,Python對比Excel有三個差異點。
注意我這裡說的是差異點,不是劣勢,因為不同品種的東西,沒辦法進行優劣比較。
雖然Python在程式語言裡算最容易入門的,但它仍然是一門程式語言,需要你理解變數、函數、邏輯語句、類別、執行緒進程等程式設計知識,對於大部分非IT專業的人來說,學習門檻是相當高的。
而且學習Python資料分析不光是學習Python語法本身,你還要學習Pandas、Numpy、Matplotlib、SKlearn等各種資料科學庫,因為大部分資料處理函數都包裝在這些函式庫裡。
很多函式庫學習的難度不比Python本身容易,因為這些大函式庫的生態很複雜。例如Pandas,它的函數方法起碼得有成千上萬個,還有不勝其數的參數和邏輯,就像是你在手擼Excel底層程式碼去做資料分析。
所以Python擅長處理複雜度高、重複性高、資料量大的場景。
Excel呢?幾乎大部分懂點電腦的人可以零門檻去使用,或者說簡單看些教程,就可以使用函數、透視表進行數據處理,入門學習成本極低。
當然,高階運算和VBA也是需要花時間去研究的。
前面說過Python不像Excel這種圖形介面軟體,拿來即用,不會出現什麼廬蛾。
Python用起來相比Excel麻煩點,有可能你跑成功的程式碼換到同事電腦就會出現bug,因為Python涉及環境配置、依賴關係,且語法格式比較嚴格,稍有不對就會報錯。
所以很多Python的學習者會停下來在安裝配置、bug處理上,還沒進行資料分析就放棄了。
對於Excel,可能就不會有這些問題,或很少。
公司裡上到董事長、CEO,下到基層員工,幾乎都在用Excel。你用Excel做出來的東西,可以毫無溝通障礙的同步給領導同事,就算是用到VBA等複雜功能,也可以輕鬆解釋。
當然這裡不涉及複雜的開發的場景,只是日常辦公的資料處理和協作,Excel比Python更實用。
如果是跑步演算法、寫自動化工具,一定Python相對合適。
多數人對Excel產生了路徑依賴。 Excel面世幾十年,在各行各業都有深層的應用,累積了大量程式碼、公式、流程、素材等,很難在一朝一夕去找到替代品。
Excel是世界上最成功的軟體之一,微軟每年用養成本上千的工程師去開發維護Excel,把Excel封裝成日常辦公室最方便的資料工具。其實微軟考慮的是滿足95%的人需求即可,剩下5%的人可以盡情去用Java、Python等工具。
所以不是說功能越強,我們越應該用什麼,而且考慮到現有的規則、經驗、行情,做出最有解選擇。
綜上,大部分人使用Excel,而不是Python進行資料分析,是很正常的事。
因為簡單而有效的東西往往是最受歡迎的,Python其實也一直往這個方向努力,相信它的明天會無比美好。
以上是在日常工作中,Python+Pandas是否能取代Excel+VBA?的詳細內容。更多資訊請關注PHP中文網其他相關文章!