r - R中更快的“外部”实现
问题描述
我试图在 R 中使用 outer() 函数通过成对评估维度为 n 的向量中的元素来创建矩阵。具体来说,设 x 为 n 维向量,我想比较 x 的每一对元素。为此,我使用了以下使用 outer() 函数的简单实现。
# these codes are example
n <- 500
x <- rnorm(n)
f <- function(x, y){
as.numeric(x<y)+0.5*as.numeric(x==y)
}
#new.mat <- outer(seq_len(n), seq_len(n), f) this was posted wrongly
new.mat <- outer(x, x, f) # edited
当 n 增加时,这种实现非常慢,我想知道一种有效的方法来完成这项工作。如果你向我介绍你的把戏,我真的很感激。
谢谢,
阿勒穆
解决方案
推荐阅读
- google-maps - 更新谷歌地图路线作为用户位置更改离子4
- git - 将 Git 子目录转换为子模块
- autofixture - AutoFixture 无法创建使用 System.ComponentModel.DataAnnotations.RangeAttribute 作为小数属性的对象
- c - 以编程方式填充 uint8_t 数组
- python-3.x - 如何自动将多个输入传递给circleci中的提示?
- java - 下载为zip时如何设置文件名?
- react-native - RN 升级后没有找到 `FBLazyVector` 的 podspec
- python - time.sleep 使图片循环不显示
- html - 如何定位与同一层次结构中的其他元素共享其类名的元素?
- pyspark - 带有 pyspark 的 Pylint 会引发不正确的警告