參考文檔:http://www.biggorilla.org/zh-hans/walkt/算法
「根據訪談記錄和專家估計,數據科學家將50%至80%的時間花在蒐集和準備難以梳理的數字數據的瑣碎工做中,而後才能開發這些數據完成有用的工做」數據庫
— Steve Lohr, Aug 17, 2014, New York Times (For Big-Data Scientists, ‘Janitor Work’ Is Key Hurdle to Insights)工具
BigGorilla是一個開源數據整合和數據準備生態系統(由Python提供支持),以容許數據科學家執行數據整合和分析。BigGorilla整合和記錄數據科學家將不一樣來源的數據融合到一個數據庫以進行數據分析時一般採起的不一樣步驟。設計
對於其中的每一個步驟,咱們記錄現有的技術,並指出能夠開發的所需技術。blog
BigGorilla的各個組件可供免費下載和使用。咱們鼓勵數據科學家爲BigGorilla貢獻代碼、數據集和示例。咱們的目標還在於推動教育和培訓,以經過BigGorilla提供的開發、文檔和工具啓示數據科學家。使用咱們的BigGorilla教程當即開始數據整合與數據準備。教程
下面的虛構情境闡釋如何使用BigGorilla的不一樣組件(參見頁面底部)。假設一家公司嘗試瞭解其客戶和潛在客戶對於公司產品以及對於競爭對手產品的想法。其目標在於,從相關的推特、博客和新聞文章中獲取和準備數據,ci
而後再對數據進行最喜愛情感分析。下文描述了在執行情感分析算法以前爲準備數據而採起的一種可能步驟。開發
首先從不一樣來源(在本例中,從相關的推特、博客和新聞文章中)獲取數據。一個獲取步驟生成一個CSV文件,而另外一個獲取步驟生成一個JSON文件。而後使用兩個抽取文件分別抽取如下信息:文檔
一、 JSON格式的推特(公司、項目、{sentence, tweetid, date}),其中句子、推特ID和日期按照公司和項目分組;get
二、 CSV格式的關於內容(公司名稱、產品、情感表達、博客URL和日期)。以後,執行數據轉換步驟,經過嵌套句子、推特ID和日期與公司名稱和項目,將JSON文件轉換爲CSV文件。下一步就是匹配兩個模式與用戶設計的目標模式最終方案
(公司、產品、言語、省份、日期)。模式映射組件使用由此獲得的匹配生成一個腳本,該腳本會將兩個源轉換並組合爲符合目標模式的數據。最後一步是數據匹配,其目標在於識別屬於同一個公司和產品配對的全部言語。
不一樣的步驟能夠手動或者經過流程管理工具進行組合和協調