1.1數據分析概述前端
1.1.1數據分析的原則算法
(1)數據分析是爲了驗證假設的問題,須要提供必要的數據驗證。在數據分析中,分析模型構建完成後,須要利用測試數據驗證模型的正確性。數據庫
(2)數據分析是爲了挖掘更多的問題,並找到深層次的緣由。網絡
(3)不能爲了作數據分析而作數據分析。分佈式
1.1.2數據分析的步驟工具
(1)探索性數據分析EDA測試
從多種渠道得到了大量的可能雜亂無章、看不出規律的數據的時候,首先須要在沒有多少經驗的狀況下第一次對其進行仔細的分析。這時就須要進行探索性數據分析(EDA: Exploratory Data Analysis)大數據
(2)模型選定分析設計
在探索性分析的基礎上,經過定量分析方法,提出一類或幾類可能的模型,而後經過進一步的分析,從中挑選一類適合的模型。視頻
(3)推斷分析
一般使用數理統計方法,進行一系列的計算和分析,對所肯定的模型或估計的可靠程度和精確程度作出推斷。
1.1.3數據分析的過程
(1)明確目標
明確目標是數據分析的出發點。明確數據分析的目標就是要明確本次數據分析要研究的主要問題和預期的分析目標等。只有明確了數據分析的目標,才能正確地制定數據收集方案,即收集哪些數據,採用怎樣的方式收集等,進而爲數據分析作好準備。
(2)收集數據
收集數據固然是要正確地收集數據,正確的數據對於實現數據分析目標將起到關鍵性的做用。正確收集數據是指從分析目標出發,排除干擾因索,正確收集服務於既定分析口標的數據。排除數據中那些與目標不關聯的干擾因素是數據收集中的重要環節。數據分析並不只僅是對數據進行數學建模,收集的數據是否真正符合數據分析的目標,其中是否包含了其餘因素的影響,影響程度怎樣,應如何剔除這些影響等問題都是數據分析過程當中必須注意的重要問題。
(3)加工整理
在明確數據分析日標基礎上收集到的數據,每每還須要對其進行必要的加工整理,然後才能真正用於分析建模。數據的加工整理一般包括數據缺失值處理、數據的分組、基本描述統計量的計算、基本統計圖形的繪製、數據取值的轉換、數據的正態化處理等,它可以幫助人們掌握數據的分佈特徵,這是進一步深刻分析和建模的基礎。
(4)選擇方法
數據加工整理完成後通常就能夠進行進一步的數據分析了。分析時應切忌濫用和誤用統計分析方法。濫用和誤用統計分析方法主要是因爲對方法能解決哪類問題、方法適用的前提、方法對數據的要求不清等緣由形成的。另外,統計分析軟件的不斷普及和應用中的不求甚解也會加劇這種現象。
(5)解釋結果
數據分析的直接結果是統計量和統計參數。
1.1.4數據分析的對象
關係型數據庫、事務型數據庫、面向對象的數據庫
數據倉庫/多維數據庫
空間數據(如地圖信息)
工程數據(如建築、集成電路的信息)
文木和多媒體數據(如文本、圖像、音頻、視頻數據)
時間相關的數據(如歷史數據或股票交易數據)
萬維網(如半結構化的HTML、結構化的XML以及其餘網絡信息)
1.2大數據分析
1.2.1大數據分析的流程
常見的大數據處理流程,能夠歸納爲四步:數據採集、預處理、統計和分析以及數據挖掘。
(1)數據採集
大數據的採集主要是指利用多個數據庫來接收發自客戶端的數據,而且用戶能夠經過這些數據庫來進行簡單的查詢和處理工做。
(2)預處理
雖然採集端自己會有不少數據庫,可是若是要對這些海量數據進行有效的分析,仍是應該將這些來自前端的數據導入到一個集中的大型分佈式數據庫,或者分佈式存儲集羣中,而且能夠在導入的基礎上作一些簡單的清洗和預處理工做。
(3)統計和分析
統計和分析主要利用分佈式數據庫或者分佈式計算集羣來對存儲於其內的海量數據進行普通的分析和分類彙總等,以知足大多數常見的分析需求。統計和分析這個環節的主要特色和挑戰是分析涉及的數據量大,其對系統資源,特別是I/O會有極大的佔用。
(4)數據挖掘
與前面統計和分析過程不一樣的是,數據挖掘通常沒有什麼預先設定好的主題,主要是在現有數據上面進行基於各類算法的計算,起到預測的效果,從而實現一些高級別數據分析的需求。數據挖掘的特色和挑戰主要是因爲挖掘的算法很複雜,而且計算涉及的數據量和計算量都很大。
1.2.2大數據分析的基本方面
(1)預測性分析能力
預測性分析可讓分析員根據可視化分析和數據挖掘的結果作出一些預測性的判斷,在此基礎上,進一步的數據分析、數據挖挖掘以讓分析員更好地理解數據。
(2)數據質量和數據管理
數據質量和數據管理是一些管理方面的最佳實踐。經過標準化的流程和工具對數據進行處理,能夠保證一個預先定義好的高質量的分析結果。
(3)可視化分析
不論是對數據分析專家仍是普通用戶,數據可視化是數據分析工具最基本的要求。可視化能夠直觀地展現數據,讓數據本身說話,讓觀衆看到結果。
(4)語義引擎
大數據中非結構化的數據日益增多,非結構化數據的多樣性帶來了數據分析新的挑戰,須要一系列的工具去解析、提取及分析數據。語義引擎須要被設計成可以從「文檔」中智能提取信息。
(5)數據分析挖掘算法
可視化是給人看的,數據分析挖掘就是給機器看的。集羣分析、分割分析、孤立點分析還有其餘的算法讓咱們能夠深刻數據內部,挖掘價值。