【发布时间】:2016-12-01 00:33:39
【问题描述】:
我有一个数组数组,称为y:
y=Array(Vector{Int64}, 10)
这基本上是一维数组的列表(其中 10 个),每个一维数组的长度为 5。下面是如何初始化它们的示例:
for i in 1:10
y[i]=sample(1:20, 5)
end
每个一维数组包含 5 个随机采样的整数,介于 1 到 20 之间。
现在我正在应用一个映射函数,其中对于 y 中的每个一维数组,不包括从 1 到 20 的数字:
map(x->setdiff(1:20, x), y)
但是,我想确定当函数应用于y[i] 时,如果setdiff(1:20, y[i]) 的输出包含i,则从结果中排除i。换句话说,我想要一个像
setdiff(deleteat!(Vector(1:20),i) ,y[i])
但使用map。
主要是我的问题是你是否可以访问map函数中的索引。
P.S,我知道怎么用comprehensions来做,我想知道是否可以用map来做。
领悟方式:
[setdiff(deleteat!(Vector(1:20), index), value) for (index,value) in enumerate(y)]
【问题讨论】:
标签: julia map-function