MATLAB移民のためのJulia tips

MATLAB移民のためのJulia tips

何も考えずに速く計算できないのならば、何もやりたくない。

型:配列と行列

一次元配列も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の行列となる。