MATLAB、Python、Scilab、Juia比較ページはこちら
https://www.simulationroom999.com/blog/comparison-of-matlab-python-scilab/
はじめに
MATLAB,Python,Scilab,Julia比較に於ける、
以下を元に書き直したもの。
- MATLAB,Python,Scilab,Julia比較 その13【基本的な使い方③】
- MATLAB,Python,Scilab,Julia比較 その17【基本的な使い方⑦】
単純年算
> a=1;
> b=2;
> c=a+b;
> c
3
記述ルール
コメント | # |
結果の非表示 | 行末に”;”(セミコロン) |
複数行での入力 | そのまま改行 |
ベクトル、行列
列の区切り | (半角スペース) or “,”(カンマ) |
行の区切り | ;(セミコロン) or 改行 ※ 改行で行を分ける場合は、列を半角スペースで区切る必要あり |
ベクトルの定義
> x=[1;2;3]
3-element Vector{Int64}:
1
2
3
> Vector(range(0,10,length=5))
5-element Vector{Float64}:
0.0
2.5
5.0
7.5
10.0
range(0,10,length=5)で等差数列を得られるが、
これはstart:step:endの区間演算子の状態であり、
参照は出来ても更新はできない。
更新するためにはVectorで実態を持たせる必要がある。
行列の定義
> A=[1 2 3; 4 5 6; 7 8 9]
3×3 Matrix{Int64}:
1 2 3
4 5 6
7 8 9
## 行列要素の抜き出し(スライシング)
> A=[1 2 3; 4 5 6; 7 8 9]
3×3 Matrix{Int64}:
1 2 3
4 5 6
7 8 9
> A[1,2]
2
> A[2,2]
行列要素の抜き出し(スライシング)
> A=[1 2 3; 4 5 6; 7 8 9]
3×3 Matrix{Int64}:
1 2 3
4 5 6
7 8 9
> A[1,2]
2
> A[2,2]
5
> A[2,3]
6
> A[2,:]
3-element Vector{Int64}:
4
5
6
> A[2,2:3]
2-element Vector{Int64}:
5
6
> A[:,3]
3-element Vector{Int64}:
3
6
9
まとめ
かなりMATLABに酷似しているが、
細かい仕様面の違いがある。
- 添え字が丸カッコではなく、角かっこである点。
- 区間演算子(start:step:end)では参照のみ可能で更新は不可。
- 上記で更新可能にするにはVectorに渡して実態を持たせる必要がある。
MATLAB、Python、Scilab、Juia比較ページはこちら
コメント