julia> data = Any[rand(5), rand(Int8, 5), rand(Bool, 5)]
3-element Vector{Any}:
[0.3005737233263839, 0.9001020036533961, 0.23278850839511744, 0.28874192844445024, 0.5812484239516024]
Int8[78, 45, 82, -28, 106]
Bool[0, 1, 1, 0, 1]
julia> nt = (; zip([:x; :y; :z], data)...)
(x = [0.3005737233263839, 0.9001020036533961, 0.23278850839511744, 0.28874192844445024, 0.5812484239516024], y = Int8[78, 45, 82, -28, 106], z = Bool[0, 1, 1, 0, 1])
julia> typeof(nt)
NamedTuple{(:x, :y, :z), Tuple{Vector{Float64}, Vector{Int8}, Vector{Bool}}}
julia> nt.y[3]
82
EDIT: Actually I think you wanted this:
julia> NamedTuple.(zip.(Ref([:x; :y; :z]), zip(data...)))
5-element Vector{NamedTuple{(:x, :y, :z), Tuple{Float64, Int8, Bool}}}:
(x = 0.3005737233263839, y = 78, z = 0)
(x = 0.9001020036533961, y = 45, z = 1)
(x = 0.23278850839511744, y = 82, z = 1)
(x = 0.28874192844445024, y = -28, z = 0)
(x = 0.5812484239516024, y = 106, z = 1)