一.NumPy簡介
NumPy是一個運行速度非常快的數學庫,主要用於數組計算,包含:
1.一個強大的N維數組對象 ndarray
2.廣播功能函數
3.線性代數、傅立葉變換、隨機數生成等功能
二.NumPy安裝
方式1:pip install numpy方式2:pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple三.NumPy創建
import numpy as npprint('導包成功')
arr1=np.array([(1,2,3),['a','b','c']])print('arr1:',arr1)arr2=np.array(range(10))print('arr2:',arr2)
arr1: [['1' '2' '3'] ['a' 'b' 'c']]arr2: [0 1 2 3 4 5 6 7 8 9]numpy的內置函數創建
print(np.arange(10)) print(np.arange(10.0)) print(np.arange(1,10)) print(np.arange(6.0,11,2)) print(np.arange(10000))
[0 1 2 3 4 5 6 7 8 9][0. 1. 2. 3. 4. 5. 6. 7. 8. 9.][1 2 3 4 5 6 7 8 9][ 6. 8. 10.][ 0 1 2 ... 9997 9998 9999]arange()函數創建
ar1 = np.linspace(2.0, 4.0, num=5)ar2 = np.linspace(2.0, 4.0, num=5, endpoint=False)ar3 = np.linspace(2.0, 4.0, num=5, retstep=True)print(ar1,type(ar1))print(ar2)print(ar3,type(ar3))
[2. 2.5 3. 3.5 4. ] <class 'numpy.ndarray'>[2. 2.4 2.8 3.2 3.6](array([2. , 2.5, 3. , 3.5, 4. ]), 0.5) <class 'tuple'>linspace()函數創建
arr1=np.logspace(0,9,10)print('數值10的0-9次冪是',arr1)
arr2=np.logspace(0,9,10,base=2)print('數值2的0-9次冪是',arr2)
數值10的0-9次冪是 [1.e+00 1.e+01 1.e+02 1.e+03 1.e+04 1.e+05 1.e+06 1.e+07 1.e+08 1.e+09]數值2的0-9次冪是 [ 1. 2. 4. 8. 16. 32. 64. 128. 256. 512.]logspace()函數創建
eye1=np.eye(3)eye1
array([[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]])eye()函數創建
zeros1=np.zeros((3,3))zeros1
array([[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]])zeros()函數創建
#diag()函數用於創建對角矩陣,可以指定對角矩陣的值diag1=np.diag((1,2,3,4,5))diag1
#運行結果array([[1, 0, 0, 0, 0], [0, 2, 0, 0, 0], [0, 0, 3, 0, 0], [0, 0, 0, 4, 0], [0, 0, 0, 0, 5]])diag()函數創建
四.NumPy屬性
arr = np.array([1,2,3,4,5,6,7])print(arr) print(arr.ndim) print(arr.shape) print(arr.size) print(arr.dtype)
[1 2 3 4 5 6 7]1(7,)7int32