Python資料科學(一) python與資料科學應用(Ⅰ)

一隻寫程式的猿發表於2017-12-14

Python資料科學(一)  python與資料科學應用(Ⅰ)
傳送門:

1.資料科學簡介與應用

資料科學主要以統計學、機器學習、資料視覺化以及(某一)領域知識為理論基礎,其主要研究內容包括資料科學基礎理論、資料預處理、資料計算和資料管理(來自百度百科)。

1.資料科學所要具備的能力

  • 統計(Statistic)
    • 單變數分析、多變數分析、變異數分析
  • 資料處理(Data Munging)
    • 抓取資料、清理資料、轉換資料
  • 資料視覺化(Data Visualization)
    • 圖表、商業智慧系統

2.資料科學主要分為以下幾個步驟

按職能來拆分可分為資料科學家和資料工程師,
其中資料科學家主要負責前三步、而資料工程師則負責後兩步。

2.Python與資料科學

1.python語言

Python資料科學(一)  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具備完整的資料分析套件

  • 如果需要做統計科學計算,python中具備Numpy、Scipy、statsmodels.

  • 如果需要進行深度學習,又可以使用TensorFlow、MXNET,它們都有python的介面

  • 做結構化資料處理與分析,又可以用Pandas

  • 對大資料進行處理,可以使用PySpark

  • 機器學習, python上又有Scikit-learn

3.安裝Anaconda

看過我之前文章的同學都知道,我一直用的是python2.7 最早也使用過3.5,現在卻要帶大家安裝Anaconda,原諒我當初學習python的時候太年輕,Python易學,但用好卻不容易,其中比較頭疼的就是包的管理和Python不同版本的問題,特別是當你使用Windows的時候。然後就出現了發行版的Python(比如Anaconda),發行版最直接的好處就是將python和許多常用的package打包,方便我們使用。接下來我帶大家安裝Anaconda.

也可以百度搜尋Anaconda

根據自己的電腦系統選擇

建議安裝使用Python3,理由如下

然後根據自己電腦進行32/64位的下載。

下載完畢安裝就好,記得環境變數那一項要勾選

安裝完畢後再視窗會看到帶有Jupyter notebook

4.使用Jupyter notebook

Jupyter Notebook(此前被稱為 IPython notebook)是一個互動式筆記本,支援執行 40 多種程式語言。Jupyter Notebook 的本質是一個 Web 應用程式,便於建立和共享文學化程式文件,支援實時程式碼,數學方程,視覺化和 markdown。 用途包括:資料清理和轉換,數值模擬,統計建模,機器學習等等。這也是我們為什麼要使用它的原因。

安裝好Anaconda,開啟cmd,輸入Jupyter notebook

點選New,新建一個檔案

可以通過按鈕或者快捷鍵執行程式碼

5.Python 3 語法

1.變數型別

和其他語言一樣,python3有六個標準的資料型別:

  • Number(數字)
  • String(字串)
  • List(列表)
  • Tuple(元組)
  • Sets(集合)
  • Dictionary(字典)
  • 其中數字包括int、float、bool、complex(複數)。
  • 內建的 type() 函式可以用來查詢變數所指的物件型別。 此外還可以用Python的自省 isinstance 來判斷
>>>a = 0609
>>> isinstance(a, int)
True
>>>
複製程式碼

2.列表

  • Python內建的一種資料型別是列表:list。
  • list是一種有序的集合,可以隨時新增和刪除其中的元素。
  • 序列中的每個元素都分配一個數字 - 它的位置,或索引,第一個索引是0,第二個索引是1,依此類推。
  • 列表可以存放各種型別的資料
#設定一個list
li = [304,12,999,46,405]

#檢視list的相關功能使用dir()
dir(li)
複製程式碼

Python資料科學(一)  python與資料科學應用(Ⅰ)

#檢視list的長度
>>>len(li)
5

#檢視list內容
>>>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 接受一個引數,這個引數總是一個 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中另一個非常有用的內建資料型別。
  • 列表是有序的物件結合,字典是無序的物件集合。兩者之間的區別在於:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。
  • 字典是一種對映型別,字典用"{ }"標識,它是一個無序的鍵(key) : 值(value)對集合。
  • 鍵(key)必須使用不可變型別。
  • 在同一個字典中,鍵(key)必須是唯一的。

Python資料科學(一)  python與資料科學應用(Ⅰ)

未完待續,連載中...

相關文章