型:配列と行列
「一次元配列も1-by-N行列も似たようものだから、どっちでも動くはず」と思ってハマっているMATLAB移民はこちら。
普通の言語は、そのへん適当にできるようにはなっていない。
1-by-N行列を一次元配列に変換
vec()
で1-by-N行列を一次元配列にできる。
u = [1 2 3] # 1x3 Array{Int64,2} vec(u) # 3-element Array{Int64,1}
一次元配列を1-by-N行列に変換
転置操作'
で一次元配列を1-by-N行列にできる。
2回転置すればN-by-1行列にできる。
u = collect(1:3) # 3-element Array{Int64,1} v = u' # 1x3 Array{Int64,2} v = u'' # 3x1 Array{Int64,2}
(もっとスマートな書き方あれば教えてください。)
一応書いておくと
a = [1 2 3]
とすると、1-by-3の行列となり、
a = [1, 2, 3]
は、一次元配列。
ones(3)
とすると、[1.0, 1.0, 1.0]の配列になるが、
ones(1,3)
は[1.0 1.0 1.0]の1-by-3の行列となる。