算法来提取线性相关的列矩阵

241(30天)
有没有通用或标准方法提取列从给定的矩阵是线性相关的吗?
感谢和欣赏任何帮助!

接受的答案

约翰D 'Errico”class=
约翰D 'Errico 2020年8月3日
很难回答这个问题。考虑一个简单的矩阵:
格式短g
一个=兰特(4、5)
一个=
0.73796 0.36725 0.042904 0.0056783 0.45642
0.13478 0.54974 0.60439 0.39645 0.36555
0.4903 0.25921 0.63407 0.77345 0.95769
0.43373 0.27658 0.6462 0.25778 0.23421
矩阵(因为它是随机的)将满秩的,因此4在这种情况下。
每一列都是线性相关的。也就是说,我们可以把每一列作为一个线性组合的其他4列。我也可以与其他矩阵存在争论问题。
=魔法(6)
一个=
35 1 6 26日19日24
3 32 7 21 23 25
31日9 2 22日27日20
8 28 33 17 10 15
30 5 34 12 14 16
4 36 29日13 18 11
等级(一个)
ans =
5
所以一个有等级5。但是再一次,我们可以写任何列的线性组合的其他5。线性相关的是哪个列?他们都是!
也许你会得到的零空间向量(s)。
Anull = null (A);
Anull = Anull / Anull (1)
Anull =
1
1
-0.5
1
1
0.5
这给了我们重要的线性组合:
(:1)+ 0.5 (:,2)* (:,3)——(:,4)——(:,5)+ 0.5 * (:,6)= 0
现在我们可以解出这些列,的人。
它如何帮助你,我真的不知道,因为我不知道你真正想做的事。
如果要我猜,你真正需要的是足够的了解线性代数,也许枢轴QR分解可能会提供什么。因为一旦你旋转QR,你也有足够的去做任何你想做的事。
[Q, R E] = qr (A, 0)
Q =
-0.017647 0.64381 -0.20699 0.22818 0.49018 0.5
-0.56472 -0.11589 -0.45002 0.59421 -0.33476 -3.7638 e-16
-0.15883 0.52674 -0.446 -0.47355 -0.15542 -0.5
-0.49413 -0.0017098 0.37629 0.14508 0.58583 -0.5
-0.088237 0.52963 0.62872 0.19923 -0.52605 -4.2484 e-16
-0.63531 -0.11878 0.13728 -0.55665 -0.059779 0.5
R =
-56.666 -16.377 -42.107 -33.53 -33.53 -35.224
0 53.915 18.611 - 30.231 30.676 - 29.048
0 0 32.491 -7.9245 -8.9182 -11.289
0 0 0 10.101 5.6138 -0.56312
0 0 0 0 5.1649 - -5.1649
0 0 0 0 0 -2.0136 e15汽油
E =
2 1 3 6 4 5
我们可以使用QR告诉我们关于这个问题,以及高效、稳定地提供你所需要的。
首先,请注意,问(6,6)基本上是零,而另一个对角元素。
,QR告诉我们,它决定列5 (E)的最后一个元素是它想辍学。
17日评论
马特·J”class=
马特·J 2023年6月8日在52。丢下
编辑:马特·J 2023年6月8日15:09
@Nguyen勒 我怀疑这种方法会慢很多,因为它可能需要O (N)圣言会操作计算排名。此外,很难决定什么数值公差参数选择的子矩阵秩的计算。例如,考虑
A = [1 e-20 1;
1 e-20 1];
B = [1 e-20 2 e-20;
1 e-20 2 e-20];
数值,应该考虑的第一列秩0,而相同的列矩阵B应该考虑1级。但是没有办法知道没有选择排名()的公差参数自适应基于整个矩阵。下面的选择,我们从我们想要得到相反的结果:
排名((:1))
ans = 1
排名(B(: 1) 1平台以及)
ans = 0

登录置评。

更多的答案(2)


布鲁诺陈德良”class=
布鲁诺陈德良 2020年8月3日
编辑:布鲁诺陈德良 2020年8月3日
测试矩阵(10 x 6)等级4
10 M =兰特(4)*兰德(4、6)
自动选择独立的列
(Q, R, p) = qr (M,“向量”);
博士= abs(诊断接头(R));
如果(1)博士
托尔= 1平台以及;
r =找到(> =托尔*(1),博士1“最后一次”);
ci = p (1 r):%是独立的列的索引
其他的
r = 0;
ci = [];
结束
%的子矩阵r列(和全列排名)。
思维= M (:, ci)
%这三个等级的评估应该是平等的
%如果不是因为如果MATLAB的选择对与上述等级不同
%的更健壮的奇异值分解算法和使用等级评估
排名(思想)
排名(M)
r
14日的评论
布鲁诺陈德良”class=
布鲁诺陈德良 2021年10月31日
当你运用qr排列稀疏矩阵 年代
(Q, R, p) = qr(年代,“向量”)
MATLAB返回排列有R有“好”的稀疏模式,并且不让对角线
abs(诊断接头(R))
减少(这通常要求 R 完全充满了非零元素)。

登录置评。

类别

找到更多的在创建和连接矩阵帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!