numpy.reshape(与ndarray.reshape一样)使用方法

numpy.reshape(a, newshape, order='C') or a.reshape(newshape, order='C')

我只使用 C-like index order,不使用 Fortran-like index order

2.1 功能

更改矩阵a的形状,比如说将1行6列的矩阵a更改为2行3列的矩阵。

2.2 参数说明

(1)a:需要更改形状的矩阵a。

(2)newshape:矩阵a所更改的新格式,eg:(2,3)。

(3)order='C':这个是跟存储格式有关系的,我只使用默认情况下的C-like index order,在我的例程中不更改order的值。

(4)返回值:是一个数组

2.3 code

# File name:           numpy_reshape
# Last modified Date:  2021年10月15日16点53分
# Last Version:        V1.0
# Descriptions:        本文件主要测试C-like index order下np.reshape()的用法

import numpy as np

# 产生一个2X3的数组a
print("产生一个2X3的数组a:")
a = np.array([[1, 2, 3], [4, 5, 6]])
print(a)

# 将a的形状改为3X2的数组;可以观察到系统默认采用C-like index order,不用手动指定;
# 假设将a更改为4行or四列的数组,运行时会出错,因为元素总个数无法整除4
print("将a的形状改为3X2的数组:")
a = np.reshape(a, (3, 2))
print(a)

# 将a的形状改为6X1的数组
print("将a的形状改为6X1的数组:")
a = a.reshape(6, 1)
print(a)

# 将a的形状改为1X6的数组
print("将a的形状改为1X6的数组:")
a = a.reshape(6)
print(a)

2.4 运行结果

D:\Prj\Python\Polynomial_Curve_Fitting\venv\Scripts\python.exe D:/Prj/Python/Polynomial_Curve_Fitting/numpy_reshape.py
产生一个2X3的数组a:
[[1 2 3]
 [4 5 6]]
将a的形状改为3X2的数组:
[[1 2]
 [3 4]
 [5 6]]
将a的形状改为6X1的数组:
[[1]
 [2]
 [3]
 [4]
 [5]
 [6]]
将a的形状改为1X6的数组:
[1 2 3 4 5 6]

Process finished with exit code 0

你可能感兴趣的:(python_numpy库,矩阵,python,机器学习)