arrays - 在 Julia 中将 float64 3-D 数组转换为 float32 3-D 数组
问题描述
我尝试了以下方法,但都没有奏效
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))
输出:Array{Float64,3}
convert(Array{Float32,3}, A)
print(typeof(A))
输出:Array{Float64,3}
map(y->(Float32,y), A)
print(typeof(A))
输出:Array{Float64,3}
我什至无法将 Float64 数组转换为Int
:
for i=1:size(A,1)
round.(Int, A[i,:,:])
end
print(typeof(A))
输出: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]
采用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}
这 '。' 用于按元素广播操作的运算符。
推荐阅读
- javascript - 找到父文档后如何查询mongoDB子文档
- r - R函数按第一个字母过滤变量
- node.js - 在浏览器控制台中..响应中“Access-Control-Allow-Credentials”标头的值为“”,必须为“真”
- reactjs - 使用带参数的路由时显示错误
- javascript - 如何接收连续的数据流
- python - 生产者-消费者,一个生产者和多个消费者
- python - closeTab 函数它在 PyQt5 中关闭多个选项卡
- python-3.x - 如何取消点的重叠,并以相同的坐标展开点(像一个小簇)?
- swift - 使用 URLSessionDataTask 和 @Published 的内存泄漏
- python - 限制用户使用软件的时间