Hi, I want to be able to convert vectors to dictionaries and the other way round. I have coded these two functions:
function vec_to_dict(v, ll) d = Dict() assert(length(v) == length(ll)) for i = 1:length(v) d[ll[i]] = v[i] end return d end function dict_to_vec(d) v = Array(Float64, 0) for k in keys(d) push!(v, d[k]) end return v end The problem is that if I convert a vector to a dictionary first, and then convert it back to a vector, the vector is not ordered anymore. As an example, the output of this code: v0 = [1.0, 2.0, 3.0] ll = ["a", "b", "c"] d = vec_to_dict(v0, ll) v1 = dict_to_vec(d) println(v0) println(d) println(v1) is: [1.0,2.0,3.0] {"c"=>3.0,"b"=>2.0,"a"=>1.0} [3.0,2.0,1.0] Is there some way to get the initial vector back with such a transformation using a dictionary? Thanks,