gpt4 book ai didi

julia - 如何向数组添加维度? (与 `squeeze` 相反)

转载 作者:行者123 更新时间:2023-12-02 17:20:11 24 4
gpt4 key购买 nike

我永远不记得如何做到这一点。

怎么走

  • 从向量(大小(n1))到列矩阵(大小(n1,1))?
  • 或者从矩阵(大小(n1,n2))到数组{T,3}(大小(n1,n2,1))?
  • 或从数组{T,3}(大小(n1,n2,n3))到数组{T,4}(大小(n1,n2,n3, 1 ))?
  • 等等。

我想知道如何获取数组并使用它来定义一个带有额外单例尾随维度的新数组。IE。与挤压相反

最佳答案

您可以使用reshape来做到这一点。

您可以为此定义一个方法:

add_dim(x::Array) = reshape(x, (size(x)...,1))
<小时/>
julia> add_dim([3;4])
2×1 Array{Int64,2}:
3
4

julia> add_dim([3;4])
2×1 Array{Int64,2}:
3
4

julia> add_dim([3 30;4 40])
2×2×1 Array{Int64,3}:
[:, :, 1] =
3 30
4 40

julia> add_dim(rand(4,3,2))
4×3×2×1 Array{Float64,4}:
[:, :, 1, 1] =
0.483307 0.826342 0.570934
0.134225 0.596728 0.332433
0.597895 0.298937 0.897801
0.926638 0.0872589 0.454238

[:, :, 2, 1] =
0.531954 0.239571 0.381628
0.589884 0.666565 0.676586
0.842381 0.474274 0.366049
0.409838 0.567561 0.509187

关于julia - 如何向数组添加维度? (与 `squeeze` 相反),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42312319/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com