
傳送門:
- Python數(shù)據(jù)科學(一)- python與數(shù)據(jù)科學應(yīng)用(Ⅰ)
- Python數(shù)據(jù)科學(二)- python與數(shù)據(jù)科學應(yīng)用(Ⅱ)
- Python數(shù)據(jù)科學(三)- python與數(shù)據(jù)科學應(yīng)用(Ⅲ)
- Python數(shù)據(jù)科學(四)- 數(shù)據(jù)收集系列
- Python數(shù)據(jù)科學(五)- 數(shù)據(jù)處理和數(shù)據(jù)采集
- Python數(shù)據(jù)科學(六)- 資料清理(Ⅰ)
- Python數(shù)據(jù)科學(七)- 資料清理(Ⅱ)
- Python數(shù)據(jù)科學(八)- 資料探索與資料視覺化
- Python數(shù)據(jù)科學(九)- 使用Pandas繪制統(tǒng)計圖表
1.數(shù)據(jù)科學簡介與應(yīng)用
數(shù)據(jù)科學主要以統(tǒng)計學、機器學習、數(shù)據(jù)可視化以及(某一)領(lǐng)域知識為理論基礎(chǔ),其主要研究內(nèi)容包括數(shù)據(jù)科學基礎(chǔ)理論、數(shù)據(jù)預(yù)處理、數(shù)據(jù)計算和數(shù)據(jù)管理(來自百度百科)。
1.資料科學所要具備的能力
- 統(tǒng)計(Statistic)
- 單變量分析、多變量分析、變異數(shù)分析
- 數(shù)據(jù)處理(Data Munging)
- 抓取數(shù)據(jù)、清理數(shù)據(jù)、轉(zhuǎn)換數(shù)據(jù)
- 數(shù)據(jù)可視化(Data Visualization)
- 圖表、商業(yè)智能系統(tǒng)
2.數(shù)據(jù)科學主要分為以下幾個步驟

2.Python與數(shù)據(jù)科學
1.python語言

Python是什么,請直接閱讀鏈接第一部分。
- 通過對比,可以突出python的簡單易用
#使用JAVA輸出Hello World
class test{
public static void main(String args[]){
System.out.println("Hello World");
}
}
#使用python語言輸出Hello World 僅需一行代碼
print("Hello World")
2.python具備完整的數(shù)據(jù)分析套件
如果需要做統(tǒng)計科學計算,python中具備Numpy、Scipy、statsmodels.
如果需要進行深度學習,又可以使用TensorFlow、MXNET,它們都有python的接口
做結(jié)構(gòu)化數(shù)據(jù)處理與分析,又可以用Pandas
對大數(shù)據(jù)進行處理,可以使用PySpark
機器學習, python上又有Scikit-learn
3.安裝Anaconda
看過我之前文章的同學都知道,我一直用的是python2.7 最早也使用過3.5,現(xiàn)在卻要帶大家安裝Anaconda,原諒我當初學習python的時候太年輕,Python易學,但用好卻不容易,其中比較頭疼的就是包的管理和Python不同版本的問題,特別是當你使用Windows的時候。然后就出現(xiàn)了發(fā)行版的Python(比如Anaconda),發(fā)行版最直接的好處就是將python和許多常用的package打包,方便我們使用。接下來我?guī)Т蠹野惭bAnaconda.


建議安裝使用Python3,理由如下
- python3和python2有很多語法的差異,具體參考解釋 Python 2 和 Python 3 的版本之間差別
- Python語言作者Guido van Rossum郵件通知Python 2.7支持時間延長到2020年,到時候?qū)⒉辉龠M行維護
然后根據(jù)自己電腦進行32/64位的下載。


4.使用Jupyter notebook
Jupyter Notebook(此前被稱為 IPython notebook)是一個交互式筆記本,支持運行 40 多種編程語言。Jupyter Notebook 的本質(zhì)是一個 Web 應(yīng)用程序,便于創(chuàng)建和共享文學化程序文檔,支持實時代碼,數(shù)學方程,可視化和 markdown。 用途包括:數(shù)據(jù)清理和轉(zhuǎn)換,數(shù)值模擬,統(tǒng)計建模,機器學習等等。這也是我們?yōu)槭裁匆褂盟脑颉?/p>



5.Python 3 語法
1.變量類型
和其他語言一樣,python3有六個標準的數(shù)據(jù)類型:
- Number(數(shù)字)
- String(字符串)
- List(列表)
- Tuple(元組)
- Sets(集合)
- Dictionary(字典)
- 其中數(shù)字包括int、float、bool、complex(復(fù)數(shù))。
- 內(nèi)置的
type()函數(shù)可以用來查詢變量所指的對象類型。
此外還可以用Python的自省 isinstance 來判斷
>>>a = 0609
>>> isinstance(a, int)
True
>>>
2.列表
- Python內(nèi)置的一種數(shù)據(jù)類型是列表:list。
- list是一種有序的集合,可以隨時添加和刪除其中的元素。
- 序列中的每個元素都分配一個數(shù)字 - 它的位置,或索引,第一個索引是0,第二個索引是1,依此類推。
- 列表可以存放各種類型的數(shù)據(jù)
#設(shè)置一個list
li = [304,12,999,46,405]
#查看list的相關(guān)功能使用dir()
dir(li)

#查看list的長度
>>>len(li)
5
#查看list內(nèi)容
>>>print(li)
[304,12,999,46,405]
#通過下標取值
>>>li[0]
304
>>>li[-1]
405
>>>li[0:3]
[304,12,999]
#列表增加
>>>li.append(609)
>>>print(li)
[304,12,999,46,405,609]
#列表擴展extend 接受一個參數(shù),這個參數(shù)總是一個 list,
并且把這個 list 中的每個元素添加到原 list 中
>>>li.extend(['xlm','love'])
>>>print(li)
[304,12,999,46,405,'xlm','love']
#list排序
>>>li.sort
>>>print(li)
[12, 46, 304, 405, 999, 'xlm', 'love']
#將一個列表降序排列
>>>li = [304,12,999,46,405]
>>>li.sort(reverse=True)
>>>print(li)
[999, 405, 304, 46, 12]
3.元組
元組(tuple)與列表類似,不同之處在于元組的元素不能修改。
tuple = (304,12,999,46,405)
4.字典
- 字典(dictionary)是Python中另一個非常有用的內(nèi)置數(shù)據(jù)類型。
- 列表是有序的對象結(jié)合,字典是無序的對象集合。兩者之間的區(qū)別在于:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。
- 字典是一種映射類型,字典用"{ }"標識,它是一個無序的鍵(key) : 值(value)對集合。
- 鍵(key)必須使用不可變類型。
- 在同一個字典中,鍵(key)必須是唯一的。

未完待續(xù),連載中...