MATLAB
はじめに
編集MATLABは、数値計算、データ解析、可視化、アルゴリズム開発など、幅広い分野で利用される高性能なプログラミング環境です。本ハンドブックでは、MATLABの基本的な使い方から応用的なテクニックまで、コード例を豊富に交えながら解説します。初心者から中級者まで、MATLABを効果的に活用するためのポイントを明快に解説します。
1. MATLABの基本
編集1.1 MATLABの起動と終了
編集MATLABを起動するには、デスクトップのアイコンをダブルクリックするか、コマンドラインからmatlab
と入力します。終了するには、コマンドウィンドウでexit
またはquit
と入力するか、ウィンドウ右上の閉じるボタンをクリックします。
1.2 コマンドウィンドウ
編集MATLABのコマンドウィンドウは、対話的にコマンドを実行するための場所です。例えば、以下のように簡単な計算を実行できます。
>> 3 + 5 ans = 8
1.3 ヘルプの利用
編集MATLABには豊富なドキュメントが用意されています。特定の関数のヘルプを見るには、help
コマンドを使用します。
>> help sin
2. 変数とデータ型
編集2.1 変数の宣言と代入
編集MATLABでは、変数を宣言する際に型を明示する必要はありません。変数に値を代入すると、自動的に型が決定されます。
>> x = 10; >> y = 3.14; >> z = 'Hello, MATLAB';
2.2 データ型
編集MATLABには、数値、文字列、論理値など、さまざまなデータ型があります。
>> a = 42; % 数値(double型) >> b = int8(42); % 8ビット整数 >> c = 'MATLAB'; % 文字列 >> d = true; % 論理値
3. 配列と行列操作
編集3.1 配列の作成
編集MATLABでは、配列を簡単に作成できます。1次元配列(ベクトル)や2次元配列(行列)を作成するには、以下のようにします。
>> v = [1, 2, 3, 4, 5]; % 行ベクトル >> m = [1, 2, 3; 4, 5, 6; 7, 8, 9]; % 3x3行列
3.2 配列の操作
編集配列の要素にアクセスするには、インデックスを使用します。MATLABのインデックスは1から始まります。
>> v(3) % ベクトルの3番目の要素 ans = 3 >> m(2, 3) % 行列の2行3列目の要素 ans = 6
3.3 行列の演算
編集MATLABでは、行列の加算、乗算、転置などの基本的な演算を簡単に行えます。
>> A = [1, 2; 3, 4]; >> B = [5, 6; 7, 8]; >> C = A + B; % 行列の加算 >> D = A * B; % 行列の乗算 >> E = A'; % 行列の転置
4. 制御構造
編集4.1 条件分岐
編集MATLABでは、if
文を使用して条件分岐を行います。
>> x = 10; >> if x > 5 disp('x is greater than 5'); else disp('x is less than or equal to 5'); end
4.2 ループ
編集for
ループやwhile
ループを使用して、繰り返し処理を行います。
>> for i = 1:5 disp(i); end >> n = 0; >> while n < 5 n = n + 1; disp(n); end
5. 関数とスクリプト
編集5.1 関数の定義
編集MATLABでは、function
キーワードを使用して関数を定義します。
function y = myFunction(x) y = x^2 + 2*x + 1; end
5.2 スクリプトの作成
編集スクリプトは、複数のコマンドをまとめて実行するためのファイルです。.m
拡張子で保存します。
% myScript.m x = 1:10; y = x.^2; plot(x, y);
6. データの可視化
編集6.1 基本的なプロット
編集MATLABでは、plot
関数を使用してデータを可視化できます。
>> x = 0:0.1:2*pi; >> y = sin(x); >> plot(x, y); >> xlabel('x'); >> ylabel('sin(x)'); >> title('Sine Wave');
6.2 複数のプロット
編集hold on
を使用して、複数のプロットを重ねて表示できます。
>> plot(x, sin(x)); >> hold on; >> plot(x, cos(x)); >> legend('sin(x)', 'cos(x)');
7. ファイル入出力
編集7.1 ファイルからのデータ読み込み
編集load
関数を使用して、ファイルからデータを読み込みます。
>> data = load('data.txt');
7.2 ファイルへのデータ書き込み
編集save
関数を使用して、データをファイルに保存します。
>> save('output.mat', 'data');
8. 応用トピック
編集8.1 画像処理
編集MATLABは画像処理にも強力です。imread
やimshow
などの関数を使用して、画像を読み込み表示できます。
>> img = imread('image.jpg'); >> imshow(img);
8.2 機械学習
編集MATLABは機械学習にも対応しています。fitcsvm
関数を使用して、サポートベクターマシンを訓練できます。
>> load fisheriris; >> X = meas(:,1:2); >> Y = species; >> SVMModel = fitcsvm(X, Y);
おわりに
編集このハンドブックでは、MATLABの基本的な使い方から応用的なテクニックまでを解説しました。MATLABは非常に強力なツールであり、適切に活用することで、さまざまな問題を効率的に解決できます。本ハンドブックが、MATLABを使いこなすための一助となれば幸いです。