generated at
Juliaの配列と行列
from Julia

配列
配列は [] にカンマ区切りで書く
jl
x = [1,2,3,4,5]
添字は 1 から始める
RMATLABFORTRANと同じ


行列
行列は [] にカンマを含めずに書く
jl
x = [1 2 3 4 5] x = [1 2 3; 3 4 5] # 二次元 # 改行して書いてもいい x = [ 1 2 3 4 5 6 7 8 9 ]
添字は 1 からで、 A[1,2,2] のようにアクセスする
メモリアクセスの順序がCなどと逆
ちょっと意味がわからんmrsekut ref
関数を適用する時
行列全体に演算したいときは普通に sin(A)
各要素に関数を適用させたいときは sin.(A)
jl
a = [1,2,3] sin.(a) map(sin, a) # map関数を使っても同じ broadcast(sin, a) # これも同じ
. は強力で、ネストさせたときも他の言語と異なり、関数がマージされ1回のループで処理される(らしい)
jl
a = [1,2,3] cos.(sin.(a))
example
// ↓こんな感じに2重ループにならない tmp = cos(a) sin(tmp)


jl
x = [1 2 3]' # (3 * 1)
jl
using LinearAlgebra A = [ 3 1; 2 2 ] e, u = eigen(A) println(e) # 固有値 println(u) # ユニタリ行列 # 対角化 D = u' * H * u println(D)



関数群
all(arr .== 0)
jsの every
.== .> のように、ドットを付けることで要素ごとに比較できる
any(arr .> 0)
jsの some