2014-07-02 123 views
6

我有一个包含float数组的数组d转化数组的数组:朱莉娅:在一个2维数组

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 

有没有更简单的方法呢?

回答

10

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

+0

@scry你能详细点吗?问题是关于将1d数组的1d数组转换为2d数组。规定的方法起作用。 – ivarne

+2

我只想说明'...'在这里很重要,它会[splat](http://docs.julialang.org/en/release-0.3/manual/faq/#what-does-the- operator-do)函数的参数(谢谢@MattB)。我写了(并删除了)一个误导性的答案,因为我不知道它们是否被直接使用。 – scry

+0

此外,要获得相同形状的矩阵,请使用hcat的结果转置:'hcat(d ...)'' – scry