在大數據分析/挖掘領域,哪些編程語言應用最多?

大數據越來越火,想了解下載這個行業領域,哪些編程語言有其他語言所不具備的優勢?是python?還是R?


每個產業都有如洪水般傾瀉的信息,面對上萬筆的顧客瀏覽紀錄、購買行為數據,如果要用 Excel 來進行數據處理真是太不切實際了,Excel 相較於其他統計軟體的功能已相去甚遠;下面幾個程序應該要有一定的認識

R語言 的好處在於它簡單易上手;

Python 結合了 R 的快速、處理複雜數據採礦的能力以及更務實的語言等各個特質,迅速地成為主流,Python 比起 R,學起來更加簡單也更直觀,而且它的生態系統近幾年來不可思議地快速成長,在統計分析上比起 R 功能更強。

今日大多數的數據科學都是透過 R、Python、Java、Matlab 及 SAS 為主,但仍然存在著鴻溝要去彌補,而這個時候,新進者 Julia 看到了這個痛點。 Julia 是個高階、不可思議的快速和善於表達的語言,比起 R 要快的許多,比起 Python 又有潛力處理更具規模的數據,也很容易上手。

Java 沒有和 R 和 Python 一樣好的可視化功能,它也不是統計建模的最佳工具,但是如果你需要建立一個龐大的系統、使用過去的原型,那 Java 通常會是你最基的選擇。

Scala

又是另一個以 Java 為基礎的語言,和 Java 很像,對任何想要進行大規模的機械學習或是建立高階的演算法,Scala 會是逐漸興起的工具。它是善於呈現且擁有建立可靠系統的能力。

Matlab

Matlab 可以說是歷久不衰,即使它標價很高;在非常特定的利基市場它使用的相當廣泛,包括密集的研究機器學習、信號處理、圖像辨識等等。

ethink大數據一站式平台 http://www.ethinkbi.com


java

生態圈好是優勢,其次要解決大規模異構機器集群計算與管理。


數據挖掘,Python不二選擇,如果數據體量相當龐大,用java


其實javascript也不錯

比python分析快30%

比java開發業務效率高


更新一下答案——

之前我提到用R,後來我自己也覺得有點撐不住,應該是技術不行吧。還是建議往Python方向發展。

Python不局限於數據分析,還有許多其他用途,有利於拓展視野。同時如果把它作為一門入門語言,它的簡潔性、嚴格的縮進、豐富的第三方庫都能幫助初學者很好地入門。

傳送一個在數據分析、挖掘方面,有哪些好書值得推薦? - 書籍推薦

肖大神推薦的書籍都可以參考,其中有不少優秀教材,都是以Python作為編程工具的,比Machine Learning 和 Natural Language Processing 的最經典教材,都烙下了Python的印記。


這學期剛上過《數據挖掘》課,老師推薦的編程語言是C++,其次是Java。我們自己用得比較多的是Python和Java,這裡只說下Python和Java,R目前還沒用過。個人感受:

  1. Python和Java上手相對較快,對編程能力要求不是非常高,編程效率相對較高,能夠更「優雅」、更快速去實現一個原型;
  2. 性能方面,Java的JIT優化使得性能幾乎可以趕上C++了;
  3. 二者的平台移植性都不錯;
  4. Python在數據挖掘方面有比較專業和全面的庫支持,也是編程效率較高的一個原因;
  5. 處理基於Hadoop/Spark的大數據業務時,Java有先天優勢,Hadoop對Java支持最全面

傳送門:大數據處理需要用到的九種編程語言 -- 數據挖掘與數據分析


首先是linux shell,awk作為數據處理統計工具,可以解決超過80%的數據分析需求,並且在執行效率上也極大的超過python,

但python豐富的第三方庫,包括numpy,pandas等為開發提供便利,處理標準更加規範。


取決於你想往哪方面發展了,如果是往大數據基礎架構,並行計算這些技術方向發展c++,java都是不錯的選擇,對網路,分散式,操作系統這些也要非常精通,練內功。如果想往數據分析挖掘這些應用方向發展,sql,python, R比較適合,另外個人感覺應用這塊對業務的了解,數據敏感性也很重要。最後,演算法這塊無論是對技術還是應用都比較重要,區別只不過是不同類型的演算法而已。


SQL才是無往不利的工具,無論你是要建模還是做分析,都逃不掉前期的數據處理,一旦格式化以後,無論你用shell還是用R,或者用Python裡面的Pandas都比不上SQL直接和方便(或者Java???寫個join都是要吐血)

當然,格式化之前那是什麼工具都可以用的,優先順序shell&>Python&>R&>Java


推薦閱讀:

為什麼大數據在公路交通領域的實際應用進展如此慢?
零基礎,對大數據分析和數據挖掘有興趣,請問學習哪些課程作為切入口比較好呢?
為什麼說只預測結果不分析原因的是大數據技術,和人工智慧沒關係?

TAG:編程語言 | 數據分析 | 大數據 | 大數據分析 |