利用Python進行數據分析(1) 簡單介紹

1、處理數據的基本內容

數據分析 是指對數據進行控制、處理、整理、分析的過程。
在這裏,「數據」是指結構化的數據,例如:記錄、多維數組、Excel 裏的數據、關係型數據庫中的數據、數據表等。


2、說說 Python 這門語言

Python 是如今最受歡迎的動態編程語言之一(還有 Perl、Ruby 等)。近些年很是流行用 Python 建站,好比流行的 Python Web 框架 Django。
Python 這類語言被稱爲腳本語言,由於它們能夠編寫簡短粗糙的小程序,即腳本。不過這好像在說 Python 沒法構建嚴謹的軟件似的,其實通過幾年來不斷改良, Python 不但擁有強大的數據處理功能,並且徹底能夠用它構建生產系統

不過因爲 Python 是一種解釋型語言, 大部分 Python 代碼都要比編譯型語言(好比 C++ 和 Java)的代碼慢得多 。因此在那些要求延遲很是小的應用中,爲了盡最大可能優化性能,使用 C++ 這種更低級且低生產率的語言更值得。
對於高併發、多線程的應用程序,Python 也不是一種理想的編程語言 ,這是由於 Python 有一個叫 GIL(全局解釋器鎖)的東西,這是一種防止解釋器同時執行多條Python 字節碼指令的機制。這並非說 Python 不能執行真正多線程並行代碼,只不過這些代碼不能在單個 Python 進程中執行而已。


3、與數據分析相關的 Python 庫

NumPy
NumPy 是 Python 科學計算的基礎包,它提供:
  • 快速高效的多維數組對象 ndarray;
  • 直接對數組執行數學運算及對數組執行元素級計算的函數;
  • 線性代數運算、隨機數生成;
  • 將 C、C++、Fortran 代碼集成到 Python 的工具等。
它專爲進行嚴格的數字處理而產生。多爲不少大型金融公司使用,以及核心的科學計算組織如:Lawrence Livermore,NASA 用其處理一些原本使用 C++,Fortran 或Matlab 等所作的任務。

Pandas
Pandas 主要提供快速便捷地處理結構化數據的大量數據結構和函數。

Matplotlib
Matplotlib 是最流行的用於繪製數據圖表的 Python 庫。

IPython
IPython 是 Python 科學計算標準工具集的組成部分,是一個加強的 Python Shell,目的是提升編寫、測試、調試 Python 代碼的速度。主要用於交互式數據處理和利用matplotlib 對數據進行可視化處理。

SciPy

SciPy 是一組專門解決科學計算中各類標準問題域的包的集合。主要包括如下包: 算法

  • scipy.integrate: 數值積分例程和微分方程求解器;
  • scipy.linalg: 擴展了由 numpy.linalg 提供的線性代數例程和矩陣分解功能;
  • scipy.optimize: 函數優化器以及根查找算法;
  • scipy.signal: 信號處理工具;
  • scipy.sparse: 稀疏矩陣和稀疏線性系統求解器;
  • scipy.special: SPECFUN(這是一個實現了許多經常使用數學函數的 Fortran 庫)的包裝器。
  • scipy.stats: 標準連續和離散機率分佈、各類統計檢驗方法和更好的描述統計法;
  • scipy.weave: 利用內聯 C++ 代碼加速數組計算的工具。


4、環境安裝與配置

很簡單,以 Mac OS X 系統安裝步驟爲例:
  1. 首先須要安裝 Xcode,爲了使用 gcc C 和 C++ 編譯器
  2. 下載並安裝 Unthought Canopy(下載地址:https://store.enthought.com/downloads/)
    Unthought Canopy 是面向科學計算的 Python 安裝包,已包含 NumPy, SciPy, Pandas, Matplotlib, IPython 等庫。

檢測是否安裝成功:
啓動 IPython,導入 pandas 並輸入 plot(arange(100)),若是彈出一個包含一條直線的繪圖框即表示安裝成功。
打開 Terminal:

包含一條直線的繪圖框:
相關文章
相關標籤/搜索