Python語言在資料探勘上非常有優勢,但它唯一的缺點你知道嗎?

shenmanli發表於2017-07-21
Python語言的優勢
基於以下三個原因,選擇Python作為實現資料探勘演算法的程式語言:
(1) Python的語法清晰;
(2) 易於操作純文字檔案;
(3) 使用廣泛,存在大量的開發文件。




Python具有清晰的語法結構,也被稱作可執行虛擬碼(executable pseudo-code)。
預設安裝的Python開發環境已經附帶了很多高階資料型別,如列表、元組、字典、集合、佇列等,無需進一步程式設計就可以使用這些資料型別的操作。
使用這些資料型別使得實現抽象的數學概念非常簡單。此外,還可以使用自己熟悉的程式設計風格,如物件導向程式設計、程式導向程式設計、或者函數語言程式設計。
Python語言處理和操作文字檔案非常簡單,非常易於處理非數值型資料。

Python語言提供了豐富的正規表示式函式以及很多訪問Web頁面的函式庫,使得從HTML中提取資料變得非常簡單直觀。


Python語言挖掘的特色
諸如MATLAB和Mathematica等高階程式語言也允許使用者執行矩陣操作,MATLAB甚至還有許多內嵌的特徵可以輕鬆地構造資料探勘應用,而且MATLAB的運算速度也很快。
然而MATLAB的不足之處是軟體費用太高,單個軟體授權就要花費數千美元。
雖然也有適合MATLAB的第三方外掛,但是沒有一個有影響力的大型開源專案。
Java和C等強型別程式設計語言也有矩陣數學庫,然而對於這些程式設計語言來說,最大的問題是即使完成簡單的操作也要編寫大量的程式碼。
程式設計師首先需要定義變數的型別,對於Java來說,每次封裝屬性時還需要實現getter和setter方法。另外還要記著實現子類,為了完成一個簡單的工作,必須花費大量時間編寫了很多無用冗長的程式碼。
Python語言則與Java和C完全不同,它清晰簡練,而且易於理解,即使不是程式設計人員也能夠理解程式的含義,而Java和C對於非程式設計人員則像天書一樣難於理解。

Python語言是高階程式語言,可以花費更多的時間處理資料的內在含義,而無須花費太多精力解決計算機如何得到資料結果。Python語言使得很容易表達自己的目的。


Python語言的缺點
Python語言唯一的不足是效能問題。Python程式執行的效率不如Java或者C程式碼高,但是可以使用Python呼叫C編譯的程式碼。這樣,就可以同時利用C和Python的優點,逐步地開發資料探勘應用程式。
可以首先使用Python編寫實驗程式,如果進一步想要在產品中實現資料探勘,轉換成C程式碼也不困難。

相關文章