NumPy
NumPy是什么
- NumPy(Numerical Python) 是Python语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,主要用于数组计算。
数组的创建
①直接用np.array
创建
import numpy as np
arr1 = np.array([1,2,3,4])
arr2 = np.array([[1,2],[3,4]])
print("一维数组:\n",arr1)
print("二维数组:\n",arr2)
输出:
一维数组:
[1 2 3 4]
二维数组:
[[1 2]
[3 4]]
②通过列表转换成数组
import numpy as np
arr_1 = [1,2,3,4]
arr_2 = [[1,2],[3,4]]
arr1 = np.array(arr_1)
arr2 = np.array(arr_2)
print("一维数组:\n",arr1)
print("二维数组:\n",arr2)
输出:
一维数组:
[1 2 3 4]
二维数组:
[[1 2]
[3 4]]
③用函数创建数组
1、创建都是0的数组 - zeros
import numpy as np
print("一维数组:\n",np.zeros(3),"\n")
print("二维数组:\n",np.zeros((2,2)),"\n")
print("三维数组:\n",np.zeros((2,3,3)),"\n")
输出:
一维数组:
[0. 0. 0.]
二维数组:
[[0. 0.]
[0. 0.]]
三维数组:
[[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]
[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]]
2、创建都是1的数组 - ones
print("一维数组:\n",np.ones(3),"\n")
print("二维数组:\n",np.ones((2,2)),"\n")
print("三维数组:\n",np.ones((2,3,3)),"\n")
输出:
一维数组:
[1. 1. 1.]
二维数组:
[[1. 1.]
[1. 1.]]
三维数组:
[[[1. 1. 1.]
[1. 1. 1.]
[1. 1. 1.]]
[[1. 1. 1.]
[1. 1. 1.]
[1. 1. 1.]]]
3、指定维度的单位矩阵 - eye
eye()
函数调用的只能是二维数组
print("二维单位矩阵:\n",np.eye(4),"\n")
输出:
二维单位矩阵:
[[1. 0. 0. 0.]
[0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]]
4、一维数组:arange
import numpy as np
print("一维数组:\n",np.arange(3),"\n") # 输出0-2
print("一维数组:\n",np.arange(1,10,2),"\n") # 输出1-9,中间依此+2
输出:
一维数组:
[0 1 2]
一维数组:
[1 3 5 7 9]
5、linspace()
import numpy as np
print(np.linspace(0,2,10)) # 将0-2划分为10个等分
输出:
[0. 0.22222222 0.44444444 0.66666667 0.88888889 1.11111111
1.33333333 1.55555556 1.77777778 2. ]
6、数组维数转换 - reshape
a1 = np.array([1,2,3,4])
print(a1.reshape(2,2))
输出:
[[1 2]
[3 4]]