gpt4 book ai didi

R:从另一个矩阵的元素中减去一个矩阵的元素

转载 作者:行者123 更新时间:2023-12-04 23:52:43 26 4
gpt4 key购买 nike

我正在尝试将一个方程应用于两个矩阵。由于我是初学者 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

我想对这些应用以下内容:
sum((r[i,j]-nr[i,j])^2)/6

我的大问题是提取 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

但我不知道如何修改这段代码来解决原来的问题。
我将不胜感激任何形式的帮助/建议。
谢谢!

最佳答案

普通运算符,如 + , - , * , /^做元素明智的操作。很简单 (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

关于R:从另一个矩阵的元素中减去一个矩阵的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20218748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com