公開日: 04/01/2021

添え字

リストの添え字は、リストから指定した項目を抽出します。リスト内の複数の項目を戻すには、リストを添え字として使用します。

注: JSLは1 からカウントを始めるため、リストの最初の要素は[1]となることに注意してください。他の一部の言語のように[0] とはなりません。

リストaには4つの項目が含まれます。

a = {"bob", 4, [1, 2, 3], {x, y, z}};
Show( a[1] );

a[1] = "bob";

Show( a[{1, 3}] );

a[{1, 3}] = {"bob", [1, 2, 3]};

a[2] = 5; // リストの2番目の項目に5を割り当てる

添え字は、リスト内の項目の選択または変更にも使用できます。

Show( a );

a = {"bob", 5, [1, 2, 3], {x, y, z}};

c = {1, 2, 3};
c[{1, 2}] = {4, 4};

// c[{1, 2}] はどちらも4となる

Show( c );

c = {4, 4, 3};

割り当てのリストや関数のリストの場合は、添え字に引用符付きの名前を使用できます。

x={sqrt( 4 ), log( 3 )};
xx= {a = 1, b = 3, c = 5};
x["sqrt"];

4

xx["b"];

3

変数名は引用符で囲む必要があります。そうでないと、JMPは指定された変数を評価して、その値を使ってしまいます。次の例では、リスト内のaの値ではなく、リスト内の2番目の項目の値が戻されます。

a = 2;
Show( xx[a] );

xx[a] = b = 3;

注:

次のような状況では、左側に複数の添え字(たとえば、a[i][j] = value、ここでaは添え字可能な項目のリストを含む)を置くことができます。

一番外側のレベル以外はすべてリストでなければなりません。前述の例では、aがリストでなければならず、a[i]は添え字可能なものであれば何でもかまいません。

最後の添え字を除いて、添え字はすべて数値でなければなりません。前述の例では、iが数値でなければならず、jは行列またはリストでもかまいません。

添え字は入れ子構造のどのレベルに対しても実行できます。例:

a[i][j][k][l][m][n] = 99;

注: 式タイプの列に格納されている行列の値を取得するには、:Discrim Data Matrix[row()][i]のように二重添え字を使用します。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).