Matrix と Vector 成分の抽出
行列またはベクトルから成分を抽出するための方法は似ています。行列とベクトルの両方に対して、選択する沿字 L は、整数、整数の範囲、またはこれらを要素とするリストのいずれかです。 L における整数値は負の値もありえます。
以下のセクションにおいて、V はベクトル、A は行列を表します。
|
ベクトルの成分
|
|
V の成分をコマンド V[L] を用いて取り出します。 返されるオブジェクトは指定された選択から次のように構成されます。L が整数のとき、返されるオブジェクトはスカラーです。それ以外の場合は、(L で与えられる範囲またはリストがただ 1 つの成分を示すとしても) 返されるオブジェクトはベクトルです。
たとえば、ベクトル V の 1 番目、3 番目、4 番目の要素から成る部分ベクトルを得るために、V[[1, 3, 4]] または V[[1, 3..4]] を使います。V[1, 3, 4] は使えません。
|
|
行列の成分
|
|
A の成分をコマンド A[L1, L2] を用いて取り出します、ただし、各 Li は上で説明した選択する沿字 L です。最初の沿字 L1 は A から選択する行を表しており、2 つ目の沿字 L2 は列を表しています。返されるオブジェクトは選んだ行と列の交差するところから構成されます。
Li が整数ならば、返されるオブジェクトの対応する次元は外されます。それ以外で返されるオブジェクトの対応する次元は保持されます。たとえば、A[1..1, 2..3] の結果は 1 x 2 行列です。一方、A[1, 2..3] の結果は行ベクトル、A[1, 2] の結果はスカラーとなります。
Li がリストならば、選ばれた成分 (行または列) は Li で与えられたのと同じ順序で返されます。例えば、A[[ 2, 1], 1..-1] は行列 A の第 2 行と第 1 行をこの順序で並べて作られる新しい行列です。
|
|
負の沿字
|
|
すべての沿字の指定において、負の沿字は次のように解釈されます。-1 は最後の行 (列) または要素を選択し、-2 は最後から 2 番目の行 (列) または要素を選択し、-3 は最後から 3 番目の行 (列) または要素を選択し、以下同様です。例えば、V[2..-1] は V の最初の値を除いた成分からなる部分ベクトルを返します。
|
|
エラーと退化した場合
|
|
i = j+1, 1 <= i <= dim + 1、dim は対応する次元の値で、Li は範囲 i..j とすると、結果は対応する次元が退化しています (その成分の次元の値は 0)。これはエラーではありません。それ以外の場合は、Li が空の沿字集合または適当な次元の値の範囲外の沿字を含む場合はエラーとなります。
|
|
Download Help Document
Was this information helpful?