python - 如何使用列矩阵制作矩阵?
问题描述
我想知道如何使用列矩阵制作矩阵。
例如,我有一个[1,2,3]
列矩阵。
我想做矩阵
[ 1 0 0
2 1 0
3 2 1
0 3 2
0 0 3 ]
像这样。
那么我该怎么做呢?是否有一些模块可以在 python 中制作这个矩阵?
解决方案
尝试使用numpy
和np.zeros
import numpy as np
def get_matrix(col):
mat = np.zeros((len(col) * 2 - 1, len(col)))
for i in range(len(col)):
mat[i : i + len(col), i] = col
return mat
col = [1, 2, 3]
print(get_matrix(col))
印刷:
array([[1., 0., 0.],
[2., 1., 0.],
[3., 2., 1.],
[0., 3., 2.],
[0., 0., 3.]])
和
col = [1, 2, 3, 4, 5]
print(get_matrix(col))
印刷
array([[1., 0., 0., 0., 0.],
[2., 1., 0., 0., 0.],
[3., 2., 1., 0., 0.],
[4., 3., 2., 1., 0.],
[5., 4., 3., 2., 1.],
[0., 5., 4., 3., 2.],
[0., 0., 5., 4., 3.],
[0., 0., 0., 5., 4.],
[0., 0., 0., 0., 5.]])
正如预期的那样,我相信。否则,请更准确地了解如何构建矩阵。
也可能有一个更聪明(更有效?)的方法来使用纯 numpy 来做到这一点,但我相信这个循环是非常可读的并且不是那么低效
推荐阅读
- javascript - 我需要了解条件三元语句
- java - 如何使用 springboot 将示例数据添加到数据库中?
- visual-studio-code - Copy and paste snippet code between local and remote PC with vscode
- firebase - Firebase profiler for firestore
- reactjs - Beginner Reactjs question if there is no "main" in the package.json how does React know what file to start in
- python - Pandas:在匹配列上连接两个数据框,保留不匹配的列并用 NaN 填充空白
- python - Python RQ Jobs dispatched EARLIER than scheduled
- javascript - 过滤数组并返回Params
- r - Create a grouping variable based on columns
- git - 我的 GitHub 存储库之一缺少几个提交。如何判断是否有其他用户强制推送,如果是,如何解决?