Numpy给数组升维度
背景
- 很多数据计算都是二维和三维,对于一维数组为了形状的匹配就需要进行升维。
需要
- 在不该表数组数据的情况下,添加数组维度:
- 原始数组:arr=[4,5,6,7],其shape为(4,),取值为arr[0],arr[1],arr[2],arr[3]
- 变形后数组:arr=[[4,5,6,7]],其shape(1,4),取值为arr[0,0],arr[0,1],arr[0,2],arr[0,3]
升维的3种方法
- np.newaxis 关键字,使用索引的语法给数组添加维度
- np.expand_dims(arr,axis) 和newaxis实现功能一样,给arr添加维度
- np.reshape(arr,newshape) 给一个维度设置newshape完成升维
import numpy as np
arr=np.arange(10)
arr
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
arr.shape
(10,)
方法一 np.newaxis
- 注意np.newaxis别名是None
np.newaxis is None
True
np.newaxis==None
True
即以下所有np.newaxis都可以使用None替代
给一维数组添加一个行维度
arr