Python數據科學(一)- python與數據科學應用(Ⅰ)

傳送門:

Python數據科學(一)- python與數據科學應用(Ⅰ)

Python數據科學(二)- python與數據科學應用(Ⅱ)

Python數據科學(三)- python與數據科學應用(Ⅲ)

Python數據科學(四)- 數據收集系列

Python數據科學(五)- 數據處理和數據採集

Python數據科學(六)- 資料清理(Ⅰ)

Python數據科學(七)- 資料清理(Ⅱ)

1.數據科學簡介與應用

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

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

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

2.數據科學主要分為以下幾個步驟

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

2.Python與數據科學

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具備完整的數據分析套件

  • 如果需要做統計科學計算,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,理由如下

  • python3和python2有很多語法的差異,具體參考解釋 Python 2 和 Python 3 的版本之間差別
  • Python語言作者Guido van Rossum郵件通知Python 2.7支持時間延長到2020年,到時候將不再進行維護

然後根據自己電腦進行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,依此類推。
  • 列表可以存放各種類型的數據

#設置一個listli = [304,12,999,46,405]#查看list的相關功能使用dir()dir(li)

#查看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愛好者社區專欄作者,請勿轉載,謝謝。

博客專欄:許勝利的博客專欄

配套視頻教程:Python3爬蟲三大案例實戰分享 公眾號:Python愛好者社區(微信ID:python_shequ),關注,查看更多連載內容。

推薦閱讀:

LDA模型的前世今生
沈志勇:做一個大數據技術的搬運工
Indeed報告:目前最熱門的10大AI類工作,數據科學家位居榜首
身為數據科學家怎麼能不掌握這四大技能!
不學好數學也想當數據科學家?不存在的

TAG:Python | 數據科學家 | 機器學習 |