Julia中是否有一个函数返回所需类型的数组副本,即numpys astype函数的等价物?我有一个"任何"类型的数组,并希望将其转换为Float数组.我试过了:
new_array = Float64(array)
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误
LoadError: MethodError: `convert` has no method matching
convert(::Type{Float64}, ::Array{Any,2})
This may have arisen from a call to the constructor Float64(...),
since type constructors fall back to convert methods.
Closest candidates are:
call{T}(::Type{T}, ::Any)
convert(::Type{Float64}, !Matched::Int8)
convert(::Type{Float64}, !Matched::Int16)
...
while loading In[140], in expression starting on line 1
in call at essentials.jl:56
Run Code Online (Sandbox Code Playgroud)
我可以编写一个遍历数组的函数并返回每个元素的浮点值,但是如果没有内置方法来执行此操作,我会发现它有点奇怪.
Ran*_*tch 14
使用convert.注意我用于第一个数组的语法; 如果在创建数组之前知道了什么,可以在方括号前面声明类型.Any同样容易被替换Float64并消除对convert功能的需求.
julia> a = Any[1.2, 3, 7]
3-element Array{Any,1}:
1.2
3
7
julia> convert(Array{Float64,1}, a)
3-element Array{Float64,1}:
1.2
3.0
7.0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10193 次 |
| 最近记录: |