R中列表对象之间的矩阵计算
我已经在r
中创建了对象列表,如下所示:
set.seed(1234)
data <- matrix(rnorm(3*4,mean=0,sd=1), 3, 4)
results <- lapply(1:ncol(data), function(i) outer(data[, i], data[, i]))
所有4个列表对象都dim = 3x3
。我也有以下矩阵matr&lt; - 矩阵(c(2,4,6,8),ncol = 4)
,其中每个值对应于上面的列表对象。
然后,我使用此等式matr [,1]*matr [,2]*结果[[1]]*结果[[2]]
在前两个对象之间以创建以下矩阵
[,1] [,2] [,3]
[1,] 64.135122 2.6966755 12.4307531
[2,] 2.696676 0.1133865 0.5226732
[3,] 12.430753 0.5226732 2.4093448
如何计算所有所有可能对象组合的方程并将其保存到新列表中?
I have created list of objects in R
as follows:
set.seed(1234)
data <- matrix(rnorm(3*4,mean=0,sd=1), 3, 4)
results <- lapply(1:ncol(data), function(i) outer(data[, i], data[, i]))
all 4 list objects have dim=3x3
. I also have the following matrix matr <- matrix(c(2,4,6,8),ncol=4)
, where each value corresponds to the above list objects.
Then, I use this equation matr[,1]*matr[,2]*results[[1]]*results[[2]]
between the first two objects in order to create the below matrix
[,1] [,2] [,3]
[1,] 64.135122 2.6966755 12.4307531
[2,] 2.696676 0.1133865 0.5226732
[3,] 12.430753 0.5226732 2.4093448
How can I calculate the above equation for all all possible object combinations and save them to a new list?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我们可以使用
combn
在list
的序列上创建两两组合,提取元素并进行乘法-输出
We can use
combn
to create pairwise combination on the sequence of thelist
, extract the elements and do the multiplication-output