如何将数组(或元组)数组重新格式化为更高维的数组

时间:2015-02-22 23:26:24

标签: arrays matrix multidimensional-array julia

考虑这两个元组的一维数组和数组

a = [ (x,x,x)  for x=1:5 ]
b = [ [x,x,x]  for x=1:5 ]
c = [ {x,x,x}  for x=1:5 ]

将这些数组a bc格式化为数组d的最简单方法是什么?

d = reshape(repeat([x for x=1:5],outer=[3]),5,3)
5x3 Array{Int64,2}:
 1  1  1
 2  2  2
 3  3  3
 4  4  4
 5  5  5

1 个答案:

答案 0 :(得分:1)

由于向量发生自动连接,bc的最佳(最短)方式是

hcat(b...)'

对于a,因为它们是元组,我会做类似

的事情
hcat(map(t->[t...],a)...)'

我将元组转换为数组,然后连接它们。