在python里有列表,元组,字典,集合,在python里其实是没有数组的,但是NumPy引入了ndarray(数组对象)
这是因为引入ndarray,使得一维向量更像单个数据。
a=np.array([1,2,3,5]) b=np.array((1,2,3,5))1.2 利用NumPy中的函数 1.2.1
a=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.3
a=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 二元函数


