R:比外面()更快的东西?

时间:2014-01-23 08:27:59

标签: r outer-join

使用R,我需要评估[使用乳胶符号]

形式的表达式
\frac{1}{n^2} \sum_{i=1}^n \sum_{j=1}^n f(x_i-x_j),

其中x_i,x_j是实数(标量)数,f是带标量输入和输出的非线性函数。

我目前最好的[现在使用R命令]是

mat <- outer(x,x,function(y,z) f(y-z))
res <- mean(mat)

其中x是一个长度为n的向量,它包含所有x_i个。

对于n = 10000,此操作在我的电脑上大约需要26秒,但是(正如预期的那样)计算时间会在n中大幅增加。我想加快速度,主要是因为我想稍后将上述结果传递给优化器。有什么建议?谢谢!

0 个答案:

没有答案