5.12 添字を使って配列を縮約する

配列変数の一部をその変数のインデックス全てを使用せずに参照したい場合があります。添字 (subscript) を使えば、配列のスライスのひとつを参照することで、単一または複数の次元を有効に縮約することができます。添字では、参照したいスライスのインデックスと値を指定します。配列をあらわす識別子のすぐ後で、その内容を角括弧で括ります。例えば以下のようになります:

これにより、Loan Balance の値のうち Period が 24 に対応する値だけが参照されることになります。Loan Balance は、PeriodCar Type によってインデックス化された2次元配列であったことを思い出してください。添字で指定した上記の参照により、Period の次元が縮約され、Car_type によってインデックス化された1次元配列のみが呼び出されます。

添字によって、2次元配列が1次元配列に縮約されます。

 

複数のインデックスをカンマで区切って添字に含めれば、複数の次元を縮約できます。例えば:

この式の結果は、Period 24 における SUV の借入金残高 (loan balance) に対応する単一の値、すなわち、24.11K になります。

インデックスの値は、実際の値ではなく、インデックスにおける位置情報に基づいて選択することもできます。位置に基づいて参照するには、インデックスの識別子の前にアットマーク (@) を配置します。例えば、'SUV' は、Car type インデックスの2番目にある値になります。

添字による以下の2つの参照は、いずれも同じ内容になります:

この参照を言葉で言い表すと以下のようになります:

Car_type が 2 のときの位置でスライスした Loan_balance