Numpy
定義:NumPy(Numerical Python) 是 Python 語言的一個擴展程式庫,支持大量的維度陣列與矩陣運算,此外也針對陣列運算提供大量的數學函式庫,它主要用于陣列計算,包括:
- 一個強大的N維陣列物件 ndarray
- 廣播功能函式
- 整合 C/C++/Fortran 代碼的工具
- 線性代數、傅里葉變換、亂數生成等功能
1、ndarray : ndarray是一系列同型別資料的集合,以 0 下標為開始進行集合中元素的索引,創建一個 ndarray 只需呼叫 NumPy 的 array 函式即可,
2、引數說明:
| 名稱 | 描述 |
| object | 陣列或嵌套的數列 |
| dtype | 陣列元素的資料型別,可選 |
| copy | 物件是否需要復制,可選 |
| order | 創建陣列的樣式,C為行方向,F為列方向,A為任意方向(默認) |
| subok | 默認回傳一個與基型別一致的陣列 |
| ndmin | 指定生成陣列的最小維度 |
實體:
3、資料型別
| 名稱 | 描述 |
| bool_ | 布爾型資料型別(True 或者 False) |
| int_ | 默認的整數型別(類似于 C 語言中的 long,int32 或 int64) |
| intc | 與 C 的 int 型別一樣,一般是 int32 或 int 64 |
| int32 | 整數(-2147483648 to 2147483647) |
| uint8 | 無符號整數(0 to 255) |
| float_ | float64 型別的簡寫 |
| complex_ | complex128 型別的簡寫,即 128 位復數 |
numpy.dtype(object, align, copy) : object - 要轉換為的資料型別物件; align - 如果為 true,填充欄位使其類似 C 的結構體; copy - 復制 dtype 物件 ,如果為 false,則是對內置資料型別物件的參考,
實體:

4、陣列屬性
(1)numpy 陣列的維數稱為秩(rank),秩就是軸的數量,即陣列的維度,一維陣列的秩為 1,二維陣列的秩為 2,以此類推,每一個線性的陣列稱為是一個軸(axis),也就是維度(dimensions),比如說,二維陣列相當于是兩個一維陣列,其中第一個一維陣列中每個元素又是一個一維陣列,
| 屬性 | 說明 |
| ndarray.ndim | 秩,即軸的數量或維度的數量 |
| ndarray.shape | 陣列的維度,對于矩陣,n 行 m 列 |
| ndarray.size | 陣列元素的總個數,相當于 .shape 中 n*m 的值 |
| ndarray.dtype | ndarray 物件的元素型別 |
| ndarray.real(imag) | ndarray元素的實(虛)部 |
| ndarray.itemsize | ndarray 物件中每個元素的大小,以位元組為單位 |
實體:

5、創建陣列
- numpy.empty 方法用來創建一個指定形狀(shape)、資料型別(dtype)且未初始化的陣列 numpy.empty(shape, dtype = float, order = 'C')
-
numpy.zeros 創建指定大小的陣列,陣列元素以 0 來填充 numpy.zeros(shape, dtype = float, order = 'C')
-
numpy.ones 創建指定形狀的陣列,陣列元素以 1 來填充 numpy.ones(shape, dtype = None, order = 'C')

- numpy.asarray 類似 numpy.array,但 numpy.asarray 引數只有三個,比 numpy.array 少兩個

- numpy.arange 函式創建數值范圍并回傳 ndarray 物件 numpy.arange(start, stop, step, dtype) (start:起始值,默認為
0 ;stop:終止值(不包含) step:步長,默認為1; dtype:回傳ndarray的資料型別,如果沒有提供,則會使用輸入資料的型別,)

7、切片和索引: slice 函式

8、廣播:對不同形狀(shape)的陣列進行數值計算的方式, 對陣列的算術運算通常在相應的元素上進行,

9、Matplotlib:
實體:
import numpy as np
from matplotlib import pyplot as plt
x = np.arange(1,11)
y = 2 * x - 1
plt.title("demo")
plt.xlabel("x axis caption")
plt.ylabel("y axis caption")
plt.plot(x,y)
plt.show()
效果:

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/150271.html
標籤:Python
上一篇:常見演算法
下一篇:資料分析和科學計算可視化
