如何使 for 循环中的数组在 Julia 中全局可用?

How to make an array from for loop globally available in Julia?

我正在用 Julia 编写代码。在这里,我有一个大小为 272x32 的数据框。我的objective是在每一列中找到最小值,并将它们存储在一个包含32个元素的数组中。为了执行此操作,我创建了一个 for 循环,遍历数据框中的列范围。但是,在将值分配为全局值后,存储的输出只有最后一个值。但是,我希望它具有最少的列作为数组中的每个条目,我可以将它用于矩阵算术运算。

代码片段:

n = ncol(variables)

for i in 1:n

    global mins = minimum(variables[!, i])
    global maxs = maximum(variables[!, i])

end

请指教以解决此问题。

此致,

我不是 100% 确定这是否是您要的,但看起来是:

mins = minimum.(eachcol(variables))
maxs = maximum.(eachcol(variables))

还有一种方法可以解决这个问题,

mins = zeros(n)
maxs = zeros(n)
n = ncol(variables)

for i in 1:n

    mins[i] = minimum(variables[!, i])
    maxs[i] = maximum(variables[!, i])

end

但不知道对执行速度或内存分配有什么影响?