我想在Julia中找到一种简洁的语法,以向量化的方式索引字典。在R中,我将执行以下操作:

dict <- c("a" = 1, "b" = 2)
keys <- c("a", "a", "b", "b", "a")
dict[keys]

在Julia中,如果我有这样的dictkeys
dict = Dict(:a => 1, :b => 2)
keys = [:a, :a, :b, :b, :a]

那么我可以使用列表理解来达到预期的结果:
julia> [dict[key] for key in keys]
5-element Array{Int64,1}:
 1
 1
 2
 2
 1

是否有更简洁的矢量化语法,类似于R语法?

最佳答案

getindex.(Ref(dict), keys)

您可以将其包装在Ref中,这样就不需要对其进行[]了。

关于julia - 字典的向量化索引,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55034758/

10-15 22:31