在巨大的數據集中進(jìn)行篩選的*工具是什么?通過(guò)和數據駭客的交流,我們知道了他們用于硬核數據分析最喜歡的語(yǔ)言和工具包。以下是小編為你整理的怎么樣學(xué)習大數據 ?
在這些語(yǔ)言名單中,如果R語(yǔ)言排第二,那就沒(méi)其他能排*。自1997年以來(lái),作為昂貴的統計軟件,如Matlab和SAS的免費替代品,它漸漸風(fēng)靡全球。 ?
在過(guò)去的幾年時(shí)間中,R語(yǔ)言已經(jīng)成為了數據科學(xué)的寵兒——數據科學(xué)現在不僅僅在書(shū)呆子一樣的統計學(xué)家中人盡皆知,而且也為華爾街交易員,生物學(xué)家,和硅谷開(kāi)發(fā)者所家喻戶(hù)曉。各種行業(yè)的公司,例如Google,Facebook,美國銀行,以及紐約時(shí)報都使用R語(yǔ)言,R語(yǔ)言正在商業(yè)用途上持續蔓延和擴散。 ?
R語(yǔ)言有著(zhù)簡(jiǎn)單而明顯的吸引力。使用R語(yǔ)言,只需要短短的幾行代碼,你就可以在復雜的數據集中篩選,通過(guò)先進(jìn)的建模函數處理數據,以及創(chuàng )建平整的圖形來(lái)代表數字。它被比喻為是Excel的一個(gè)極度活躍版本。
R語(yǔ)言最偉大的資本是已圍繞它開(kāi)發(fā)的充滿(mǎn)活力的生態(tài)系統:R語(yǔ)言社區總是在不斷地添加新的軟件包和功能到它已經(jīng)相當豐富的功能集中。據估計,超過(guò)200萬(wàn)的人使用R語(yǔ)言,并且最近的一次投票表明,R語(yǔ)言是迄今為止在科學(xué)數據中*的語(yǔ)言,被61%的受訪(fǎng)者使用(其次是Python,39%)。 ?
此外,它的身影也漸漸出現在了華爾街。以前,銀行分析師會(huì )全神貫注于Excel文件直到深夜,但現在R語(yǔ)言被越來(lái)越多地用于金融建模R,特別是作為一種可視化工具,Niall O’Connor,美國銀行的副總裁如是說(shuō)。 “R語(yǔ)言使我們平凡的表格與眾不同,”他說(shuō)。 ?
R語(yǔ)言的日漸成熟,使得它成為了數據建模的*語(yǔ)言,雖然當企業(yè)需要生產(chǎn)大型產(chǎn)品時(shí)它的能力會(huì )變得有限,也有的人說(shuō)這是因為它的地位正在被其他語(yǔ)言篡奪。 ?
“R更適合于做一個(gè)草圖和大概,而不是詳細的構建,”Michael Driscoll,Metamarkets的首席執行官說(shuō)。 “你不會(huì )在谷歌的網(wǎng)頁(yè)排名以及Facebook的朋友推薦算法的核心找到R語(yǔ)言。工程師會(huì )用R語(yǔ)言做原型,然后移交給用Java或Python寫(xiě)的模型?!? ?
話(huà)說(shuō)回來(lái),早在2010年,Paul Butler就以R語(yǔ)言打造了全球的Facebook地圖而著(zhù)名,這證明了該語(yǔ)言豐富的可視化功能。盡管他現在已經(jīng)不像以前那樣頻繁地使用R語(yǔ)言了。 ?
“R正在一點(diǎn)點(diǎn)地過(guò)時(shí),因為它的緩慢和處理大型數據集的笨重,”Butler說(shuō)。 ?
大數據分析方法 ?
大數據挖掘:定義目標,并分析問(wèn)題 ?
開(kāi)始大數據處理前,應該定好處理數據的目標, ?
然后才能開(kāi)始數據挖掘。 ?
例如: ?
統計最近三年的畢業(yè)生的各種情況。 ?
那么就應該把畢業(yè)生相關(guān)的信息都要搜集一遍下來(lái)。 ?
大數據挖掘:建立模型,采集數據 ?
可以通過(guò)網(wǎng)絡(luò )爬蟲(chóng),或者歷年的數據資料, ?
建立對應的數據挖掘模型,然后采集數據, ?
獲取到大量的原始數據。 ?
大數據挖掘:導入并準備數據 ?
在通過(guò)工具或者腳本,將原始轉換成可以處理的數據, ?
例如:MySQL,數據文本. ?
大數據分析算法:機器學(xué)習 ?
通過(guò)使用機器學(xué)習的方法, ?
處理采集到的數據。 ?
根據具體的問(wèn)題來(lái)定。 ?
這里的方法就特別多。 ?
常見(jiàn)的方法有: ?
人工神經(jīng)網(wǎng)絡(luò ) ?
隨機森林樹(shù) ?
LMS算法 ?
HIVE(數據倉庫) ?
由facebook開(kāi)源,最初用于解決海量結構化的日志數據統計問(wèn)題。 ?
Hive定義了一種類(lèi)似SQL的查詢(xún)語(yǔ)言(HQL),將SQL轉化為MapReduce任務(wù)在Hadoop上執行。通常用于離線(xiàn)分析。 ?
HQL用于運行存儲在Hadoop上的查詢(xún)語(yǔ)句,Hive讓不熟悉MapReduce開(kāi)發(fā)人員也能編寫(xiě)數據查詢(xún)語(yǔ)句,然后這些語(yǔ)句被翻譯為Hadoop上面的MapReduce任務(wù)。
?
Pig(ad-hoc腳本) ?
由yahoo!開(kāi)源,設計動(dòng)機是提供一種基于MapReduce的ad-hoc(計算在query時(shí)發(fā)生)數據分析工具 ?
Pig定義了一種數據流語(yǔ)言—Pig Latin,它是MapReduce編程的復雜性的抽象,Pig平臺包括運行環(huán)境和用于分析Hadoop數據集的腳本語(yǔ)言(Pig Latin)。 ?
其編譯器將Pig Latin翻譯成MapReduce程序序列將腳本轉換為MapReduce任務(wù)在Hadoop上執行。通常用于進(jìn)行離線(xiàn)分析。 ?
Sqoop(數據ETL/同步工具) ?
Sqoop是SQL-to-Hadoop的縮寫(xiě),主要用于傳統數據庫和Hadoop之前傳輸數據。數據的導入和導出本質(zhì)上是Mapreduce程序,充分利用了MR的并行化和容錯性。 ?
Sqoop利用數據庫技術(shù)描述數據架構,用于在關(guān)系數據庫、數據倉庫和Hadoop之間轉移數據。 ?
大數據必備的數據結構與算法: ?
1. 數據結構和算法概述 ?
2. 數組、鏈表、隊列、棧等線(xiàn)性表 ?
3. 二叉樹(shù)、BST、AVL 樹(shù)及二叉樹(shù)的遞歸與非遞歸遍歷 ?
4. B+ ?
5. 跳表 ?
6. 圖、圖的存儲、圖的遍歷 ?
7. 有向圖、無(wú)向圖、懶惰與積極的普利姆算法、克魯斯卡爾算法及 MST、單源最短路徑問(wèn)題及 Dijkstra 算法 ?
8. 并查集與索引式優(yōu)先隊列、二叉堆 ?
9. 遺傳算法初步與 TSP 問(wèn)題 ?
10. 內部排序(直接插入、選擇、希爾、堆排序、快排、歸并等)算法與實(shí)踐中的優(yōu)化 ?
11. 外部排序與優(yōu)化(文件編碼、數據編碼、I/O 方式與 JVM 特點(diǎn)、多線(xiàn)程、多路歸并等) ?
12. 哈希表、Trie 樹(shù)、倒排索引、分布式索引初步(Map-Reduce) ?