我想创建一个等级矩阵 k
.
矩阵的维度是m x n
.输入k
满足 k < min(m,n)
的条件.
最佳答案
你的目标不是很清楚。
但是为了创建一个具有特定等级 k
的矩阵 B
,从矩阵 A
(具有 rank
至少 k
),您可能喜欢使用 svd
并继续执行以下操作:
>>> A= rand(7, 5);
>>> rank(A)
ans = 5
>>> [U, S, V]= svd(A);
>>> k= 3;
>>> B= U(:, 1: k)* S(1: k, 1: k)* V(:, 1: k)';
>>> rank(B)
ans = 3
关于matlab - 如何使用 MATLAB 创建秩 k 矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7124673/