python做数据操作时经常要将多维数组转换成一维数组,常用函数包括flatten(), squeeze(), ravel(), reshape()等。
reshape(a, shape): 将多维数组转换到新的尺寸,当参数填-1时,将其拉平成一维向量
squeeze(a, axis=None): 将多维数组中尺寸等于1的维度删除,axis为空则删除所有单维度的条目。
flatten和ravel使用的区别是前者返回一份拷贝,对其做修改不影响原始矩阵,后者返回的是视图,对其做修改会影响原始矩阵。
flatten(order='C')返回的是拷贝:
可选参数,order:{‘C’,‘F’,‘A’,‘K’}
ravel(order='C')返回的是视图: