gpt4 book ai didi

r - 使用来自 2 个矩阵的值来索引 R 中的第三个矩阵

转载 作者:行者123 更新时间:2023-12-01 09:54:23 24 4
gpt4 key购买 nike

我正在优化一个更复杂的代码,但遇到了这个问题。

a<-array(sample(c(1:10),100,replace=TRUE),c(10,10))  
m<-array(sample(c(1:10),100,replace=TRUE),c(10,10))
f<-array(sample(c(1:10),100,replace=TRUE),c(10,10))
g<-array(NA,c(10,10))

我需要使用a & m中的值来索引f并将值从f赋值给g
g[1,1]<-f[a[1,1],m[1,1]]除了所有索引,并尽可能优化/快速

我显然可以制作一个 for 循环来为我做这件事,但这看起来相当愚蠢和缓慢。看起来我应该能够在 apply 系列中为我们提供一些东西,但我一直没有弄清楚如何做到这一点。我确实需要像这里一样保持数据结构化,以便我可以在代码的不同部分使用矩阵运算。我一直在寻找这个问题的答案,但还没有找到任何特别有用的东西。

最佳答案

g[] <- f[cbind(c(a), c(m))]

这利用了矩阵可以作为向量寻址并使用矩阵作为索引这一事实。

关于r - 使用来自 2 个矩阵的值来索引 R 中的第三个矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31413384/

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