在Python numpy中构建任意n的nxn矩阵

2 投票
1 回答
7470 浏览
提问于 2025-04-18 01:15

有没有办法在Python的numpy库(3.3版本)中写代码来构建一个nxn的矩阵,而不需要提前指定n的值?我想用A_i,j这样的方式来索引矩阵的元素,但我甚至不知道怎么定义A_i,j,让它们真正变成对象。我想这样的代码可能会有效:

n    
i=1
j=1

when i (is less than) n+1

  when j (is less than) i+1
   A_i,j= f(i,j)
   j+=1

i+=1

但是这段代码并没有成功……有没有什么建议呢?我的最终目标是为一个任意的nxn矩阵写QR分解。但我首先需要知道怎么定义我正在处理的矩阵。我对Python和numpy都很陌生,所以对这些内容了解不多。任何帮助都将非常感激。我也是刚开始使用stackexchange,所以对于我那段代码不太好表示歉意。(小于号)是指缺少底边、头指向左边的三角形符号——就是那个明显的小于符号。

1 个回答

4

你可以创建一个空的 nxn 数组:

import itertools
import numpy as np

my_array = np.empty([n, n])

然后把坐标 i, j 位置的值设置为 f(i, j)

for i, j in itertools.product(range(n), range(n)):
    my_array[i, j] = f(i, j)

撰写回答