如何在R中找到正交矩阵?

时间:2013-04-14 15:51:47

标签: r

我想在R中找到一个正交矩阵(GG'CG=L=diag(l1,l2,...lp) 其中l1>l2>...>lp>0是已知矩阵C的特征值。 我找到一个使用代码eigen(C)$vectors的矩阵,但结果矩阵(L)不是对角矩阵。有没有人可以帮助我? 提前谢谢

1 个答案:

答案 0 :(得分:8)

您对C显示的唯一限制是所有特征值都是正数。但是,这相当于说C是肯定的。

在这种情况下,给定e <- eigen(C),我们有以下内容:

Q = e$vectors
l = e$values

Conj(t(Q)) = Q^-1

Q %*% diag(l) %*% Conj(t(Q)) = C

等效地:

diag(l) = Conj(t(Q)) %*% C %*% Q

由于l中的特征值按降序存储,您就完成了。