Numpy
全称Numerical Python,支持N维数组对象ndarray。
ndarray是用于存放同类型元素的多维数组;
ndarray中每个元素是数据类型对象的对象(成为dtype);
数组操作
import numpy as np
#创建数组
a = [1,2,3,4]
b = np.array(a)
c = np.array([[1,2],[3,4]])
np.zeros(3) #全0一维数组
np.ones(3) #全1一维数组
np.zeros((3,3)) #全0二维数组,3行3列
np.ones((1,3)) #全1二维数组,1行3列
np.identity(3) #单位矩阵,3行3列
#随机数组
np.random.rand(10,10) #10行10列,每个数在0-1之间
np.random.uniform(0,100,5) #[0,100)内的5个数
np.random.randint(0,100) #[0,100)内的一个整数
np.random.normal(1.75,0.1,(2,3)) #生成2行3列的数组,均值1.75,标准差0.1的正态分布
#另外还有两种生成标准正态分布的函数:
np.random.randn(4,6) #4行6列
np.random.standard_normal(size=(4,6)) #参数必须是元组类型
#数组属性
x = np.array([[1,2,3],[4,5,6]])
print(x.size) #6
print(x.ndim) #2
print(x.shape) #(2,4)
print(x.itemsize) #4
print(x.dtype) #int32
y = x.reshape(3,2)
#数组乘法
x*y #点积(elementwise)
#索引和切片
#数组切片之后不会复制原数组,而所有操作都会视作在原数组上操作
arr = np.arange(10)
arr_slice = arr[5:8