朱莉娅:在二维数组中转换数组数组

时间:2014-07-02 03:59:46

标签: arrays julia

我有一个数组d,其中包含一个浮点数组:

julia> d
99-element Array{Array{Float64,1},1}:
...

我试图将其转换为二维数组,并成功实现了我的目标:

data = Array(Float64,length(d),length(d[1]))
for i in 1:length(d)
    for j in 1:length(d[1])
        data[i,j] = d[i][j]
    end
end

有更简单的方法吗?

2 个答案:

答案 0 :(得分:14)

hcat(d...)vcat(d...)应该做你想做的事。

答案 1 :(得分:0)

如果您的数组应该代表一个矩阵并且您想要保留逻辑,那么这是我发现的更简单的方法(朱莉娅1.1)

julia> a=[ [1,2], [3,4], [5,6] ]
3-element Array{Array{Int64,1},1}:
 [1, 2]
 [3, 4]
 [5, 6]

julia> permutedims(reshape(hcat(a...), (length(a[1]), length(a))))
3×2 Array{Int64,2}:
 1  2
 3  4
 5  6

一个人可以使用transpose代替permutedims