5.5 変数をテーブルとして定義する

いずれの自動車にも、それぞれ独自の販売価格があります。Car price については、テーブル (Table) で定義することにし、Car type を使ってインデックス化します。テーブルに関連して言えば、テーブルは必ずしも2次元である必要はありません。1次元、2次元、または3次元以上であっても構いません (この例では1次元です)。

1. Car price というタイトルの変数を新規作成します。

2. 定義 (Definition) フィールドを開き、Expression ポップアップメニューを開いたら、Table を選択します。

3. Indexes ウィンドウが表示されます。Cart type インデックスを選択したら、移動ボタンをクリックして、Selected Indexes リストにこれをに移動します。OK をクリックします。

 

Indexes ウィンドウを閉じたら、編集テーブル (Edit Table) が表示されます。

Car price として、以下の値を入力します。

Standard: 22K
SUV: 40K
Hybrid: 24K
Indexes ウィンドウに戻りたい場合は、この Index ボタンをクリックします。

テーブルの見出しには、インデックスのカテゴリがそれぞれ表示される点に注意してください。

セル間の移動には、Tab キーまたは Shift-Tab を使います。

 

Tip: インデックスノードからテーブル変数に向けて影響矢印 (influence arrows) を描画することで、選択したインデックスを Index ウィンドウに事前に投入することができます。インデックスノードから伸びる影響矢印は、デフォルトでは非表示に設定されていますが、Diagram メニューから Set diagram style を選択することで表示させることができます。

 

次に、リース費用の変数を作成します。2年リースを選択した場合の月々の支払額は、ファスト・トニーによって以下のようにリストされます。

Standard: $400
SUV: $700
Hybrid: $500

 

Lease Payment 変数は、Car price 変数とよく似ています。しかし、今回は、編集テーブルの代わりに expression 構文を使用して定義内容を直接入力することにします。

a 1. Lease payment というタイトルの変数を新規作成します。

2. Definition フィールドを開き、Expression ポップアップメニューから を選択します。(これによって、既存の変数の定義内容に変更が加わることはありません。)

3. 定義内容を図のように直接入力します。

 

お分かりのとおり、Table 定義は、それ特有の構文に従います。Table 宣言のあとに、括弧で囲まれた2つのリストが続きます。最初のリストの中身は、テーブルを配列化するインデックスです (この単純なサンプルでは、インデックスは1つしかありませんが、複数指定することも可能です)。2つ目のリストの中身はそれぞれの値です。

重要な点は、入力する値はインデックスカテゴリと同じ順序にすることです。Car type インデックスは、以下のように定義したのを思い出してください:

これは、Lease payment 変数の値それぞれの順序と一致します。インデックスが複数ある場合もこれと同じ規則が適用されます。例えば、以下のような2次元配列があったとしましょう:

複数の次元を取り扱う場合は、編集テーブル (edit table) を使用するほうが通常は簡単です。

最後に、既にある Miles per gallon 変数を Car type によってインデックス化されたテーブルにあわせて定義しなおします。MPG の Standard, SUV, Hybrid の各値は、それぞれ、28, 23, 45 になります。

Miles per gallon 変数を選択します。

Definition フィールドを開いたら、Expression ポップアップメニューから を選択します。

上記 (青のテキスト) と同じ定義内容を入力します。