1. 程式人生 > >資料科學 IPython 筆記本 9.2 NumPy 簡介

資料科學 IPython 筆記本 9.2 NumPy 簡介

9.2 NumPy 簡介

本節是《Python 資料科學手冊》(Python Data Science Handbook)的摘錄。

譯者:飛龍

協議:CC BY-NC-SA 4.0

本章以及第三章概述了在 Python 中有效載入,儲存和操作記憶體資料的技術。

主題非常廣泛:資料集可能來源於廣泛的來源和各種格式,包括文件集合,影象集合,聲音片段集合,數值測量集合或幾乎任何其他內容。儘管存在這種明顯的異質性,但它將幫助我們從根本上將所有資料視為數字陣列。

例如,影象 - 特別是數字影象 - 可以看做簡單的二維數字陣列,表示整個區域的畫素亮度。聲音片段可以看做是強度與時間的一維陣列。文字可以以各種方式轉換為數字表示,可能是表示某些單詞或單詞對的頻率的二元數字。

無論資料是什麼,使其可分析的第一步是將它們轉換為數字陣列(稍後我們將在特徵工程中討論此過程的一些具體示例)。因此,數值陣列的有效儲存和操作,對於資料科學的過程來說絕對是基礎。

我們現在來看看 Python 用於處理這種數值陣列的專用工具:NumPy 包和 Pandas 包(在第三章中討論)。

本章將詳細介紹 NumPy。 NumPy(Numerical Python 的縮寫)提供了一個有效的介面,來儲存和操作密集資料緩衝區。在某些方面,NumPy 陣列類似於 Python 的內建list型別,但隨著陣列的大小增大,NumPy 陣列提供了更高效的儲存和資料操作。

NumPy 陣列構成了 Python 中幾乎整個資料科學工具生態系統的核心,因此無論你對資料科學的哪些方面感興趣,學習有效使用 NumPy 都是值得的。

如果你按照前言中列出的建議並安裝了 Anaconda 技術棧,那麼你已經安裝了 NumPy 並準備好了。如果你更喜歡自己動手,可以訪問 http://www.numpy.org/ 並按照其中的安裝說明進行操作。

完成後,你可以匯入 NumPy 並仔細檢查版本:

import numpy
numpy.__version__

# '1.11.1'

對於這裡討論的軟體包,我建議使用 NumPy 1.8 或更高版本。

照慣例,你會發現 SciPy/PyData 世界中的大多數人都會使用np作為別名來匯入 NumPy:

import numpy as np

在本章以及本書的其餘部分中,你會發現這是我們匯入和使用 NumPy 的方式。

關於內建文件的提醒

在閱讀本章時,不要忘記 IPython 使你能夠快速瀏覽包的內容(通過使用製表符補全功能),以及各種函式的文件(使用?字元 - 請參閱 IPython 中的幫助和文件)。

例如,要顯示numpy名稱空間的所有內容,可以鍵入:

In [3]: np.<TAB>

要顯示 NumPy 的內建文件,你可以使用:

In [4]: np?

更詳細的文件以及教程和其他資源,請訪問 http://www.numpy.org