桌面端數據分析程序語言

  桌面端數據分析程序語言,其重點是使用方便且計算能力強。考察某種語言是否適合進行桌面端數據分析,可以用六個指標來衡量:應用環境、文件處理、文本和字符串處理、結構化數據處理、模型預測算法、其他非重點指標。
    

一、應用環境

  進行桌面數據分析的用戶絕大多數都不是專業程序員,他們更習慣在windows下工作,他們缺乏專業程序員擁有的配置環境的技能,因此桌面端分析程序語言的應用環境應當足夠簡單,應當支持windows,應當易於安裝部署。
  集算器和R語言這方面做得都不錯,應用環境簡單,直接安裝即可使用;Python本身也問題不大,但經常要用到的Pandas包(加強Python計算能力)在linux下的安裝較輕鬆,在windows下的安裝卻很複雜,對版本很挑剔;SSAS是微軟產品,對Windows支持很好,但安裝配置過程有些複雜。
    

二、文件處理

  TXT和XLS文件是日常工作中最容易產生出來的文件格式,對這兩種文件格式的支持越好,則說明分析語言越好用。
  各分析語言一般都直接支持TXT,但XLS的情況複雜些,尤其是第三方模塊的安裝和版本兼容性。Excel和SSAS都是微軟產品,因此SSAS可以無縫支持XLS。集算器、SPSS、SAS也不需要安裝第三方包,可以直接訪問XLS。Pandas的情況有點特殊,Pandas直接支持XLS,但Pandas本身就是第三方庫函數,另外Pandas對某些版本的XLS支持不好。R需要安裝第三方庫函數和Perl運行環境,而R、第三方庫函數、Perl,這三者的版本要匹配才行,安裝過程很麻煩。
  讀寫操作方面,SSAS最易用,Pandas和R提供的參數較豐富。
  文件處理還要考慮對大文件的支持,比如邊讀邊處理的能力。這方面集算器最擅長,代碼也最簡練。
    

三、文本和字符串處理

  原始數據有時不夠規整,經常是半結構化或非結構化的,這時就需要對數據進行前期處理,從而形成易於使用的結構化數據,因此文本和字符串處理能力也是分析語言的考察重點。
  Python在這方面最擅長,R也不錯,集算器稍次,SSAS最不擅長。
    

四、結構化數據處理

  在桌面端分析的數據事實上大多是結構化數據,因此結構化計算是桌面數據分析中最常見的計算形式,結構化計算能力也是桌面端數據分析程序語言的核心能力。
  集算器的設計目標就是結構化數據計算,因此在這方面最專業。R新加了數據框這種數據類型,但仍不夠專業,特別在有序計算方面要弱於集算器。Pandas的數據框仿照R並做了優化,能力和R不相上下但會更好理解一些。相比之下,SPSS、SAS、SSAS,這三種工具的結構化計算能力偏弱。
 有序計算是指同期比、比上期、相對區間取數、分組中的排名、分組中取前後幾名等算法。有序計算經常涉及到相對位置和跨行組,是桌面端數據分析中的典型問題。集算器天生具有序號,在有序計算方面表現最好。Python、R在這方面也很強,但它們以向量爲基本元素,而不是記錄,因此代碼比較難懂,更適合科學家使用。
    

五、模型預測算法

  模型和預測主要用於科學領域,雖然在桌面端數據分析中不多見,但仍然是不可或缺的一項指標。
  R在這方面擁有最新和最豐富而且最成熟的第三方算法,SASS要簡單易用但不夠靈活,Python/Pandas一直在追趕模仿R,語法更易理解但成熟度還有差距,SAS和SPSS更爲權威。相比之下,集算器幾乎沒有現成的模型預測算法。
    

六、其他非重點指標

  還有些非重點的指標在特定情況下也會被關注,比如對數據庫的支持,繪圖能力,對並行計算的支持。
  SASS對數據庫支持最好,但不擅長文本文件、數據庫、自定義數據之間的混合計算。集算器對數據庫的支持也不錯,對異構數據源之間也支持良好。Pandas、R、SAS、SPSS對數據庫的支持一般,對異構數據源支持也不夠好。
  SASS在繪圖方面最美觀,但靈活性不足。R、集算器、Pandas的靈活性足夠強,內置的統計圖也很多。
  並行計算方面,集算器內置並行計算引擎,配置方便,容易開發。R要通過第三方軟件才能支持並行計算,而且配置複雜,開發困難。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章