julia - 如何在 Julia 中展平二维数组?
问题描述
julia 中是否有将二维数组转换为一维数组的函数?例如,我知道如何通过定义一个函数来做到这一点,但我不想每次都编写它。
function flatten(Mat)
n, m = size(Mat)
flattened = zeros(m*n)
for i=1:n
for j=1:m
flattened[(i-1)*m + j] = Mat[i,j]
end
end
return flattened
end
解决方案
您可以使用vec
(https://docs.julialang.org/en/v1/base/arrays/#Base.vec):
julia> A = rand(2, 2)
2×2 Array{Float64,2}:
0.843062 0.164179
0.167501 0.800111
julia> vec(A)
4-element Array{Float64,1}:
0.8430624537022231
0.16750120450998196
0.16417911360611237
0.8001111380491013
推荐阅读
- sql - 使用显式游标时 SYS_REFCURSOR 不起作用
- php - ZMQContexted getSocket trhow 连接重置错误
- powerapps - 查看自定义连接器活动
- firebase - Firebase Cloud Functions:Cors 示例不起作用
- sbt - 添加任务以将文件从我的资源文件夹复制到目标
- android - 列表内包含列表的 RecyclerViewAdapter(分组)
- node.js - 永远使用时如何将节点应用程序启动为systemd服务?
- google-api - 当用户有 2 个以上帐户时,Google YOLO 登录不起作用
- vue.js - 如何在 Nuxt 中使用 pug 扩展 Vue 组件?
- flutter - 如何在底部导航栏选项卡中传递变量