數據科學

前言python

這是按照我爲本身定的學習計劃與職業發展方向進行的總結學習,以期理清思路,最大效率地把所學知識用起來,同時隨着我經驗與技能的增長,這將是一份不斷更新的概念,這一課是《數據科學》,sql

 

什麼是數據科學家?數據庫

數據科學家:瞭解數學與統計學知識,具有編程技能,能夠經過代碼創建統計模型,收集數據,並將數據轉化爲全面的分析,編制信息圖,造成報告,並傳遞給其餘人。簡單說,數據科學家的價值流程是:收集——》存儲——》分析——》展現——》預測、改進。編程

數據科學家須要瞭解要提出的問題,可以解釋數據和了解數據結構。如今都是團隊工做,一我的不必定面面俱到,若是具備很強的黑客技能(擅長收集數據),或者精通統計學(擅長分析數據),也能夠成爲數據科學家團隊的一份子,固然,全棧最好。數組

現實應用:網絡

--推薦電影,根據用戶之前觀看的內容推薦影片數據結構

--社交網絡推薦,推薦相關聯的人,如,推薦有共同好友的人認識機器學習

--分析解決交通擁堵函數

--生物科學領域,標註基因組與序列工具

--天文領域,儲存、分析數據,預測行星運動

--醫療,分析電子病歷,調動醫療設備,早作準備

--運動,收集球員動做和打球風格數據,分析比賽動態,改善教練決策

 

數據科學家最經常使用的工具:

--Numpy:支持多維數組與矩陣

--Pandas:存儲數據,利於分析

 

Numpy:

--均值(Mean)                               numpy.mean()

--中位數(Median)          numpy.median()

--標準差(Stardard deviation)         numpy.std()

--矩陣乘法(Matrix Mutiplication)    numpy.dot()

Pandas:

--DataFrame函數       二維的表格型數據結構

--Series                  一維數組(處理相同數據結構)

--Index

--pandas.describe()  計算數值數據均值、中位數、標準差、最大、小值

矩陣乘法:當矩陣A列數等於矩陣B行數時,AB能夠相乘 C = AB,C = numpy.dot(A,B)

1.C的行數等於A的列數, C列=B列

2.C的第m行第n列元素=A第m行與B第n列元素乘積之和,不知足交換律

 

2、數據來源與處理

數據來源

--文件

--數據庫

--互聯網

通用的數據格式:

CSV

XML

JSON

XML與JSON均可以嵌套數據

讀取CSV數據,返回dataframe 數據

import Pandas

data = pandas.read_csv(path)

寫CSV數據

dataW = data.to_csv(path)

 

關係型數據庫

sql語句:

查詢:SELECT *FROM _table_;

查20條:SELECT district, subdistrict FROM_table_ [LMT] 20;

SELECT *FROM _table_ WHERE district = __;

聚焦函數:AVG,COUNT,MAX,MIN,SUM

SELECT district,SUM(__) FROM _table_ GROUP BY district;

SELECT district,subdistrict, SUM(__) FROM _table_ GROUP BY district,subdistrict;

 

數據丟失緣由:

1.偶然的系統錯誤

2.人爲示提供數據

怎麼處理?

1,部分刪除

   1.1 成列刪除?

   1.2 成隊刪除?

樣本量較小時,用刪除法,會危害數據的表明性

2. 插補

   2.1 在缺失值插補其餘數據的均值

   2.2 畫線性迴歸圖

 

數據分析

正態分佈

T檢驗

--單樣本T檢驗

--雙樣本T檢驗

--P值

 

統計學側重收集數據做出結論

機器學習側重於作出預測

 

機器學習類型:

--監督式學習

--非監督式學習

數據————》》模型————》》預測

 

數據可視化:

有效的可視化組成元素

--視覺線索

位置、長度、角度、方向、形狀、面積、體積、飽和度、顏色(精確度從大—》小排列)

--座標系

--數據類型

--上下文內容

用python 繪圖

*許多包

--Matplotlib   很是流行

--ggplot

*爲何選擇ggplot?

--好識別

--圖形化的語法

   --ggplot(data, aes(xvar, yvar)) + geom_point(color = 'red') + geom_line(color = 'red') + ggtitle('title') + xlab('x-label') +ylab('y-label')                                data = pandas.dataFrame

   --ggplot(hr_by_team_year,aes(x = 'yearID', y = 'HR',color = 'teamID')) + geom_point() + geom_line() + ggtitle('Title') + xlab('yearID') + ylab('HR')

 

數據類型:

--數值數據

   --離散數據

   --連續數據

--分類數據

   --表明特性

   --能夠用數值表示,但不具有數學意義

   --有序數據,數值數據與分類數據的混合,通常都是從低到高排序

--時間序列數據

   --經過長時間重複測量而得到的觀察數據的集合,

   --與數值數據同樣,但多了連續的時間

圖形化時間序列數據

 --散點繪製

    --位置

    --上下文

--線圖

   --減少散點圖的缺陷

   --強調趨勢

   --聚焦時間變化,不會覆蓋所有趨勢

--黃土曲線

   --強調長期趨勢

   --黃土(Loess):是加權迴歸

--多變量圖形

  --怎麼組合多變量?

     --大小

     --顏色/飽和度

 

Mapreduce

   --適用於大數據,數據量要大於1T以上

   --把總體數據,分爲不一樣的小部分進行操做

相關文章
相關標籤/搜索