invert is exactly the function you are looking for:
Return a new nested container by reversing the order of the nested container a, for example turning a dictionary of arrays into an array of dictionaries, such that a[i][j] === invert(a)[j][i].
julia> invert((a = [1, 2, 3], b = [2.0, 4.0, 6.0]))
3-element Array{NamedTuple{(:a, :b),Tuple{Int64,Float64}},1}:
(a = 1, b = 2.0)
(a = 2, b = 4.0)
(a = 3, b = 6.0)
Hard to say where to look for “standard terminology” in this case. Don’t know about the motivation for naming that function invert (@andyferris?), I’m just a happy user (: Is there is any truly obvious name anyway?
Yes, I see similar results. That’s the difference between lazy (@cast) and eager (invert) operations.
I guess SplitApplyCombine could get a lazy invertview function if someone is interested and makes a PR. For now, there are splitdimsview + combinedimsview: