我尝试了以下,但没有一个工作
A = zeros(2,2,2)
A[:,:,1] = [1 2; 3 4]
A[:,:,2] = [10 20; 30 40]
for i=1:size(A,1)
convert(Array{Float32,2}, A[i,:,:])
end
print(typeof(A))
Run Code Online (Sandbox Code Playgroud)
输出: Array{Float64,3}
convert(Array{Float32,3}, A)
print(typeof(A))
Run Code Online (Sandbox Code Playgroud)
输出: Array{Float64,3}
map(y->(Float32,y), A)
print(typeof(A))
Run Code Online (Sandbox Code Playgroud)
输出: Array{Float64,3}
我甚至无法将Float64数组转换为以下数组Int:
for i=1:size(A,1)
round.(Int, A[i,:,:])
end
print(typeof(A))
Run Code Online (Sandbox Code Playgroud)
输出: Array{Float64,3}
还有什么我可以尝试将其转换Array{Float64,3}为Array{Float32,3}?
A = zeros(2,2,2)
A[:,:,1] = [1 2; 3 4]
A[:,:,2] = [10 20; 30 40]
Run Code Online (Sandbox Code Playgroud)
使用 Float32.(A)
julia> A=Float32.(A)
2×2×2 Array{Float32,3}:
[:, :, 1] =
1.0 2.0
3.0 4.0
[:, :, 2] =
10.0 20.0
30.0 40.0
julia> print(typeof(A))
Array{Float32,3}
Run Code Online (Sandbox Code Playgroud)
'.' 用于广播操作元件的操作员.