-3
我有一个矩阵mydata。我把它的本征如何从矢量创建矩阵
ev <- eigen(mydata)
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] -0.44852453+0i 0.11670674-0.43102606i 0.11670674+0.43102606i 0.02678808-0.00239041i 0.02678808+0.00239041i 0.013711630+0i
[2,] -0.40701659+0i 0.17265390+0.01329737i 0.17265390-0.01329737i 0.32050237+0.31677316i 0.32050237-0.31677316i -0.946287625+0i
[3,] -0.65381971+0i 0.35662142+0.31807798i 0.35662142-0.31807798i -0.83423480+0.00000000i -0.83423480+0.00000000i -0.265152784+0i
[4,] -0.37545331+0i -0.72987261+0.00000000i -0.72987261+0.00000000i -0.00637960-0.10181135i -0.00637960+0.10181135i 0.004667737+0i
[5,] -0.05763717+0i 0.02473111+0.01282302i 0.02473111-0.01282302i -0.00818839+0.03180396i -0.00818839-0.03180396i 0.122647730+0i
[6,] -0.24778175+0i
万一结果没有排序,我得到对应的最大特征值从而最大特征向量:
k <- which(abs(ev$values)==max(abs(ev$values)))
G<-ev$vectors[,k]
[1] -0.44852453+0i -0.40701659+0i -0.65381971+0i -0.37545331+0i -0.05763717+0i -0.24778175+0i
调用这个最大特征向量
G = [克,克 ...克 ñ ] Ť
因此,在这种情况下,G = [-0.44852453 + 0I -0.40701659 + 0I -0.65381971 + 0I -0.37545331 + 0I -0.05763717 + 0I -0.24778175 + 0I,其中n = 6
我的问题是,我想从这个特征向量构建一个比率矩阵,以便B = {bij = gi/gj}。 R中有这样的函数吗?如果不是什么是最简洁的方式来获得没有循环的矩阵? {抱歉,我不知道如何在这个界面中显示数学符号。应该看,矩阵B =条目b(子ij)= g(子i)/ g(子j),g是G的成员}
对不起,这是不正确的。例如,矩阵是6x6。对角线条目清楚地全部为1. [1,2] = -0.44852453/-0.40701659 = 1.101980954。 [2,1] = -0.40701659/-0.44852453 = 0.9074567 [5,4] = -0.05763717/-0.37545331 = 0.153513549等等。 – Ivan
这个结果并没有使用你的输入向量,所以当然这些值是不正确的!试着将'outer'应用到你的实际向量上。 –
对不起,duuh!谢谢。 – Ivan