【发布时间】:2018-09-26 13:15:15
【问题描述】:
在 R 中 replicate(n, expr) 重复运行 expr 表达式 n 次,而 rep(value, n) 重复 value n 次。
Julia 相当于 R 的 replicate 和 rep?
例如。在R
rep(1:3, 3) 产生c(1:3, 1:3, 1:3)
并且replicate(3, runif(1)) 从均匀分布中生成 3 个随机数(即它运行了 runif(1) 3 次。
【问题讨论】:
-
fill(value, n)是指“重复值 n 次”吗? -
不确定你真正需要什么,你能写一个简单的例子吗?但似乎
repeat是最接近的:replicate->repeat(1:5, inner=(1,5))和rep->repeat(1:5, outer=(2,1))。 -
@Gnimuc 添加了 R 示例
-
您也可以使用迭代器,例如,
ncycle来自IterTools.jl或repeated来自Base.Iterators。这样您就不必实际创建更大的结构,这样可以在不需要时节省内存分配。 -
我从不使用 R,所以从外行的角度来看,
rep(v,n)等价于repeat(v, inner=(1,n)),replicate等价于 for 循环或数组推导[rand() for i = 1:n]。
标签: julia