Как загрузить csv-файл с комплексными номерами в julia?

Я пытаюсь получить доступ к некоторым сложным числам, которые я написал в csv-файл в julia, но у меня возникли проблемы с их распознаванием. Чтобы понять, что происходит, рассмотрим следующее

a = [1+2.3im, 2.3+0im]
writecsv("test.csv",a)
b = readcsv("test.csv")

теперь, если я допрошу типов

julia> typeof(b)
Array{Any,2}

julia> typeof(a)
Array{Complex{Float64},1}

и я не могу использовать элементы b как комплексные числа, как строка.(b[1] is "1.0 + 2.3im", например).

1 ответов


вот так:

julia> b = map(x->eval(parse(x)),readcsv("test.csv"))
2x1 Array{Complex{Float64},2}:
 1.0+2.3im
 2.3+0.0im