在python里有列表,元组,字典,集合,在python里其实是没有数组的,但是NumPy引入了ndarray(数组对象)
这是因为引入ndarray,使得一维向量更像单个数据。
a=np.array([1,2,3,5])b=np.array((1,2,3,5))
1.2 利用NumPy中的函数 1.2.1a=np.arange(4)b=np.zero(4,5)c=np.ones(4,5)# 是ones 不是one,不要拼错了单词d=np.full((3,4),6)e=np.eye(5) # 是eye 不是eyes,不要拼错了单词
1.2.2 1.2.3a=np.linspace(0,6,4) # 生成数组[0、2、4、6.],即把0到6 均等分,生成4个数b=np.linspace(0,6,4,endpoint=False)#生成数组[0、 1.5 3、 4.5]#对于数组b,因为endpoint=False,你可以理解为生成了[0、 1.5 3、 4.5 6.0],但是我们只要4个数,即不要最后一个数c=np.concatenate(a,b)
2.ndarray数组的变换在创建数组时,可以指定其类型:
a=np.ones((3,4),dtype=np.int32)
在创建后,可以改变其维度和类型
2.1改变ndarray数组的维度 2.1.1 要注意resize reshape的区别:
resize 会改变数组本身
在调用函数flatten swapaxes时,原数组不变!!
2.2 改变ndarray数组的维度a=np.ones((3,4),dtype=np.int)new_a=a.astype(np.float)new_b=a.astype(np.int)#一定会创建一个新数组
和上面的一样,调用astype ,原数组不变
而且一定会创建一个新数组,即使数组类型根本没变
索引:获取数组中特定位置元素的过程
切片:获取数组子集元素的过程
要注意,数组从零开始计算
数组与标量的运算会作用于数组中的每一个元素
4.1 一元函数 4.2 二元函数