【发布时间】:2015-11-21 21:07:14
【问题描述】:
假设我们有数组 u 和 v,以及函数 f。我们想要一个由 u 和 v 的所有成员的 f(ui, vi) 组成的矩阵 F。 试试这个:
F = [ [f(ui,vi) for vi in v] for ui in u]
结果是一个数组数组(用 Julia 的话来说,Array{Array{Int64,1},1})
如何将其重塑为二维数组? (Array{Int64,2})
【问题讨论】:
假设我们有数组 u 和 v,以及函数 f。我们想要一个由 u 和 v 的所有成员的 f(ui, vi) 组成的矩阵 F。 试试这个:
F = [ [f(ui,vi) for vi in v] for ui in u]
结果是一个数组数组(用 Julia 的话来说,Array{Array{Int64,1},1})
如何将其重塑为二维数组? (Array{Int64,2})
【问题讨论】:
只需使用一个multidimensional comprehension,而不是两个嵌套推导式:
F = [f(ui,vi) for vi in v, ui in u]
【讨论】:
for ui in u, vi in v吗?
v 中迭代 u 中的一个元素。我列出的顺序是相似的,因为 Julia 是列专业的。对于u 中的一个元素,每一列都会遍历v。