リストの作成
リストの作成は、Table 関数を使用して、いたってシンプルかつ柔軟に
作成することができます。第一引数以外は、リストでなければなりません。
つまり、{}で囲います。引数は、以下の形をとります。
1. Table[値, {Max}]
2. Table[式, {i, Max}]
3. Table[式, {i, Min, Max}]
4. Table[式, {i, Min, Max, Step}]
5. Table[式, {i, iMin, iMax}, {j, jMin, jMax}, ...]
1.は、"値" が格納された "Max" の要素分のリストを作成します。
2.は、"式" の中に "i" を使用し、1から "Max" まで変化させた
評価結果のリストを作成します。
3.は、"式" の中に "i" を使用し、"Min" から "Max" まで変化させた
評価結果のリストを作成します。
4.は、"式" の中に "i" を使用し、"Min" から "Max" まで "Step"
ずつ変化させた評価結果のリストを作成します。
5.は、"式" の中に "i", "j" を使用し、それぞれ"Min"から "Max" まで変化させた評価結果のリストを作成します。
以下が使用例です。
最後の例では、リストの中にリストが入っています。
この式では、"i"と"j"を変化させているため、最初のリストでは"i=1, j=3~7"
の結果が格納されており、...、という具合に、入れ子になったリストが生成されます。
使用用途
リストの演算
上記のように作成したリストは、数値や式と同様にシンボルへ格納することができる。
ここでは、簡単なリストを使用した演算を紹介します。
このように、計算に使用しただけでは元のリスト "aa" の各要素値は保持されています。
(Out[9]参照)
リスト処理関数一覧
ここで、リスト処理を行う上で便利な関数を紹介します。
構文 | 解説 |
Reverse[expr] | expr の要素を全て逆転させる(例: {a, b, c) -> {c, b, a}) |
ReplaceAll[expr, x -> x'] | expr の x の値を x' へ置き換える(例: {0.5, 1, 0.5} -> {1, 1, 1}) |
Position[expr, pattern] | expr のリストの中で、pattern が含まれている要素番号を取得する |
Flatten[expr] | 入れ子になっているリストを取り払う(例: {{a, b}, {c, d}} -> {a, b, c, d}) |
Apply[Plus, expr] | expr の各要素を全て加算した結果を取得する |
Length[expr] | リストの要素数を取得する |
Insert[expr, elem, n] | expr のリスト n 要素に、elem の値を挿入する |
Sort[expr] | リストの各要素を、小さい順に並び替える |
First[expr] | リストの最初の要素を取り出す |
Last[expr] | リストの最後の要素を取り出す |