如何将数组元素的类型由Any具体到Float

如图,在用Julia1.0.5解析一个比较庞大的参数文件时,出现了数组元素为[“X”,“Y”,“Z”]的情况。
此时提示元素类型为Any,但当前需要将其作为Float进行处理。
请教各位大神是否有比较便捷的方法,能让数组元素类型从Any具体到Float?

真诚感谢!祝大家端午安康 :pray:

parse来做字符串到数的类型转换

julia> raw_data = ["Inf", "1.23", 23]
3-element Array{Any,1}:
   "Inf"
   "1.23"
 23

julia> map(raw_data) do x
           isa(x, AbstractString) ? parse(Float64, x) : Float64(x)
       end
3-element Array{Float64,1}:
 Inf
  1.23
 23.0

2 个赞

由于parse只能作用与字符串,所以考虑把所有内容转换为字符串再操作:

parse.(Float64, string.(["Inf", 3]))
1 个赞