ndarray.reshape函数说明
时间: 2023-10-23 11:04:33 浏览: 91
详解numpy.ndarray.reshape()函数的参数问题
`ndarray.reshape()` 是 NumPy 库中的一个函数,用于改变数组的形状,即调整数组的维度。
函数的定义如下:
```python
ndarray.reshape(shape, order='C')
```
参数说明如下:
- `shape`:要调整为的目标形状,可以是一个整数或一个元组。如果传入一个整数 n,则表示将数组变为一个 n 行的一维数组;如果传入一个元组 (n, m),则表示将数组变为一个 n 行 m 列的二维数组;如果传入一个元组 (n, m, k),则表示将数组变为一个 n 行 m 列 k 深度的三维数组,以此类推。
- `order`:可选参数,用于指定元素在内存中的存储顺序,默认为 'C'(按行存储)。可以选择的值有:
- 'C':按行存储(行主序)
- 'F':按列存储(列主序)
函数会返回一个新的数组,该数组与原数组共享数据,并且具有新的形状。如果无法满足所需的形状,则会引发 `ValueError` 异常。
需要注意的是,`reshape()` 函数只改变数组的形状,不改变数组中的元素个数。因此,原数组和新数组所含的元素个数必须一致。
示例用法:
```python
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
print(arr.reshape(2, 3))
# 输出:
# [[1 2 3]
# [4 5 6]]
arr2 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2.reshape(6))
# 输出: [1 2 3 4 5 6]
```
上述示例中,`reshape()` 函数将一维数组调整为二维数组和将二维数组调整为一维数组的操作。
阅读全文