Sie*_*elu 4 r matrix equation-solving
我试图将一个方程应用于两个矩阵.由于我是初学R用户,对我来说似乎很难.如果你能给我一些建议,我会很高兴.
我有两个相似性矩阵:
> r
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 0 4 2 2 5 5
[2,] 4 0 8 3 3 2
[3,] 2 8 0 4 4 3
[4,] 2 3 4 0 0 3
[5,] 5 3 4 0 0 5
[6,] 5 2 3 3 5 0
> nr
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 0 4 7 2 4 3
[2,] 4 0 5 2 3 2
[3,] 7 5 0 3 2 2
[4,] 2 2 3 0 7 2
[5,] 4 3 2 7 0 5
[6,] 3 2 2 2 5 0
Run Code Online (Sandbox Code Playgroud)
我也喜欢申请以下内容:
sum((r[i,j]-nr[i,j])^2)/6
Run Code Online (Sandbox Code Playgroud)
我的大问题是nr从元素中提取元素r.例如,如果我nr[i,j]用数字替换,0.4那么以下工作完美:
s<-numeric()
for (i in 1:nrow(r))
{
for (j in 1:ncol(r))
{
s[k]<-sum((r[i,j]-0.4)^2)/6
}
}
> s
[1] 0.02666667
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何修改此代码来解决原始问题.我将不胜感激任何帮助/建议.谢谢!
正常的运营商如+,-,*, /和^做的元素方式操作.所以简单地(r - nr)^2/6为你做诀窍.
r
## [,1] [,2] [,3]
## [1,] 2 2 2
## [2,] 2 2 2
## [3,] 2 2 2
nr
## [,1] [,2] [,3]
## [1,] 3 3 3
## [2,] 3 3 3
## [3,] 3 3 3
r * nr
## [,1] [,2] [,3]
## [1,] 6 6 6
## [2,] 6 6 6
## [3,] 6 6 6
r - nr
## [,1] [,2] [,3]
## [1,] -1 -1 -1
## [2,] -1 -1 -1
## [3,] -1 -1 -1
(r - nr)^2/6
## [,1] [,2] [,3]
## [1,] 0.1666667 0.1666667 0.1666667
## [2,] 0.1666667 0.1666667 0.1666667
## [3,] 0.1666667 0.1666667 0.1666667
Run Code Online (Sandbox Code Playgroud)