julia - 如何在 Julia NamedTuple 中迭代名称和 values?

例如。如果我有:

t = (
  a = 1:5,
  b = 2:6,
  c = 3:7,
)

我想:

(
  a = 15,
  b = 20,
  c = 25,
)

实现此目的的惯用方法是什么?

回答1

我猜你想要

julia> map(sum, t)
(a = 15, b = 20, c = 25)

回答2

我不知道如何从 1:5 传递到 15,但如果你允许我发明这样的功能,那么,你可以这样做:

julia> NamedTuple(k=>length(v)*(first(v)+2) for (k,v) in pairs(t))
(a = 15, b = 20, c = 25)

回答3

您也可以使用旧的 map

julia> map(x -> length(x) * (first(x) + 2), t)
(a = 15, b = 20, c = 25)

相似文章

julia - 在 Julia 中构建 CPLEX 失败

我正在尝试在计算机集群上的Julia中安装CPLEX。执行Pkg.build("CPLEX")时出现以下错误。看来我没有通过正确的道路。我知道如何在本地计算机上更正它,但谁能告诉我如何在计算机集群上修...

随机推荐

最新文章