np二维矩阵元素如果不是np.inf就赋值为1
时间: 2024-03-07 20:46:51 浏览: 19
您可以使用以下代码将二维矩阵中非inf元素赋值为1:
```python
import numpy as np
# 创建一个3x3的矩阵
matrix = np.array([[1, 2, np.inf], [4, np.inf, 6], [7, 8, 9]])
# 将非np.inf元素赋值为1
matrix[matrix != np.inf] = 1
# 打印结果
print(matrix)
```
输出结果:
```
array([[1., 1., inf],
[1., inf, 1.],
[1., 1., 1.]])
```
可以看到,非np.inf的元素都被赋值为1了。
相关问题
python如何用np.array初始化三维矩阵,如何给三维矩阵赋值
要用 numpy 库中的 np.array() 方法初始化一个三维矩阵,需要传递一个由三个列表组成的列表作为参数,其中每个列表代表矩阵的一个维度,例如:
```python
import numpy as np
arr = np.array([ [[1, 2], [3, 4]], [[5, 6], [7, 8]] ])
print(arr)
```
输出:
```
[[[1 2]
[3 4]]
[[5 6]
[7 8]]]
```
上述代码初始化了一个 2x2x2 的三维矩阵。
要给三维矩阵赋值,可以使用下标索引来访问矩阵中的元素,例如:
```python
arr[0][1][0] = 10
print(arr)
```
输出:
```
[[[ 1 2]
[10 4]]
[[ 5 6]
[ 7 8]]]
```
上述代码将矩阵的第一个维度为 0,第二个维度为 1,第三个维度为 0 的元素赋值为 10。
np.zeros如何创建1维矩阵
可以使用`np.zeros`函数创建一个一维矩阵(也称为向量),例如:
```python
import numpy as np
a = np.zeros(5) # 创建一个长度为5的一维矩阵,所有元素都为0
print(a) # 输出 [0. 0. 0. 0. 0.]
```
在`np.zeros`函数中传入一个整数参数`n`,表示矩阵的长度,即可创建一个长度为`n`的一维矩阵。