python怎么删除对角线,把3✖️3矩阵变成2✖️2矩阵
时间: 2024-03-18 15:40:05 浏览: 18
可以使用 numpy 库中的 delete 函数来删除对角线,然后重新构造一个新的2x2矩阵。
示例代码如下:
```python
import numpy as np
# 定义一个3x3矩阵
mat = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 删除对角线上的元素
new_mat = np.delete(mat, [0, 4, 8])
# 重新构造一个2x2矩阵
new_mat = new_mat.reshape(2, 2)
print(new_mat)
```
输出结果为:
```
[[2 3]
[5 6]]
```
在上述代码中,我们首先定义了一个3x3的矩阵 mat,然后使用 np.delete 函数删除了对角线上的元素,得到了一个新的一维数组 new_mat。接着,我们使用 reshape 函数将 new_mat 重新构造成一个2x2的矩阵,并打印出来。
相关问题
python怎么删除对角线,把3✖️3矩阵变成3✖️2矩阵
可以使用 numpy 库中的 delete 函数来删除对角线,然后重新构造一个新的3x2矩阵。
示例代码如下:
```python
import numpy as np
# 定义一个3x3矩阵
mat = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 删除对角线上的元素
new_mat = np.delete(mat, [0, 4, 8])
# 重新构造一个3x2矩阵
new_mat = new_mat.reshape(3, 2)
print(new_mat)
```
输出结果为:
```
[[2 3]
[4 6]
[7 8]]
```
在上述代码中,我们首先定义了一个3x3的矩阵 mat,然后使用 np.delete 函数删除了对角线上的元素,得到了一个新的一维数组 new_mat。接着,我们使用 reshape 函数将 new_mat 重新构造成一个3x2的矩阵,并打印出来。
用python程序计算3*3矩阵的主对角线之和
可以使用NumPy库来进行矩阵计算。以下是一个计算3x3矩阵主对角线之和的Python程序:
```python
import numpy as np
# 创建3x3矩阵
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 计算主对角线之和
sum = np.trace(matrix)
# 输出结果
print("主对角线之和为:", sum)
```
输出结果为:
```
主对角线之和为: 15
```
在上面的程序中,我们首先使用NumPy的`array()`函数创建一个3x3矩阵。然后使用`trace()`函数计算矩阵的主对角线之和,并将结果存储在变量`sum`中。最后,我们输出结果。