numpy二维列表与操作
时间: 2023-12-16 16:03:44 浏览: 75
在 NumPy 中,二维数组可以用 ndarray 对象来表示。下面是一个创建二维数组的例子:
```python
import numpy as np
# 创建一个3x3的二维数组
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(a)
```
输出:
```
[[1 2 3]
[4 5 6]
[7 8 9]]
```
可以通过下标来访问和修改二维数组中的元素,下标使用逗号分隔。例如,访问第 2 行第 3 列的元素:
```python
print(a[1, 2]) # 输出:6
```
还可以使用切片来访问二维数组的子集:
```python
print(a[0:2, 1:3]) # 输出:[[2 3]
# [5 6]]
```
上面的代码中,我们使用了切片 `0:2` 来选择前两行,再使用切片 `1:3` 来选择第 2、3 列。
除了访问和修改元素以外,NumPy 还提供了许多操作二维数组的函数,例如:
- `ndarray.shape`:获取数组的形状,即各维度的长度。
```python
print(a.shape) # 输出:(3, 3)
```
- `ndarray.size`:获取数组中元素的总数。
```python
print(a.size) # 输出:9
```
- `ndarray.reshape`:改变数组的形状。
```python
b = a.reshape((9,))
print(b) # 输出:[1 2 3 4 5 6 7 8 9]
```
- `ndarray.transpose`:返回数组的转置。
```python
c = a.transpose()
print(c) # 输出:[[1 4 7]
# [2 5 8]
# [3 6 9]]
```
- `ndarray.sum`:计算数组中元素的总和。
```python
print(a.sum()) # 输出:45
```
- `ndarray.mean`:计算数组中元素的平均值。
```python
print(a.mean()) # 输出:5.0
```
- `ndarray.max` 和 `ndarray.min`:计算数组中元素的最大值和最小值。
```python
print(a.max()) # 输出:9
print(a.min()) # 输出:1
```
这些操作只是 NumPy 提供的一小部分,还有很多其他的操作可以用来处理二维数组。
阅读全文