行に関する関数には、たとえば、特定のセルにおける値を参照する関数があります。ほかにも、等差数列の値を、各行に代入する関数もあります。構文の詳細については、『スクリプトガイド』の「JSL関数」章を参照してください。
「x1」列に「欠測値のコード」列プロパティが割り当てられていて、「999」の値が欠測値として扱われるとします。別の列に、平均の計算式が含まれています。平均を計算する際、欠測値の代わりに「999」を使用するには、計算式内でCol Stored Valueを使用します。
Mean( Col Stored Value( :x1 ), :x2, :x3 )
開始値から始まり、終了値で終わる数列を作成します。ステップには、開始値と終了値を含む、開始値から終了値までの値の個数を指定します。最初の3つの引数によって決められた値が、指定した繰り返し回数だけ反復されます。終了値に達すると、Countは開始値からもう一度開始されます。
繰り返し回数の引数は、追加で指定します。デフォルトは1ですが、Count関数の例の「Count4」のように1以外の引数を指定すると、指定した回数だけ各値が繰り返されます。Count関数に引数を追加するには、第3引数を選択してからカンマを入力するか、 または、計算式エディタのキーパッドにある挿入ボタン()をクリックします。
•
|
Count1=Count (1, 9, 2)
|
•
|
Count2=Count (1, 9, 3)
|
•
|
Count3=Count (1, 9, 9)
|
•
|
Count4=Count (1, 9, 3, 3)
|
図A.2 Count関数の例
Count関数によって、グリッド値を含む列を作成できます。たとえば、以下の計算式は、値がNRow()個だけある、 範囲が−5から5までのグリッドを作成します(NRow()関数は、データテーブルの行数を戻す関数です)。
Count(–5, 5, Root( NRow() ) );
Count(–5, 5, Root( NRow() ), Root( NRow() ) );
第1引数で指定した列について、現在行の値と、現在行から第2引数だけ前の行の値との差を戻します。第2引数のデフォルトは1です。この引数は、どのような数値にも変更できます。Dif(X, n)は、XRow()–XRow()-nまたはXRow()–Lag(X, n)と同じ値を戻します。
第1引数で指定された列について、現在行から第2引数だけ前の行の値を戻します。第2引数のデフォルトは1です。この引数は、どのような数値にも変更できます。第2引数で指定した行が存在しない場合は、欠測値を戻します。Lag(X, n)は、XRow( )–nと同じ結果になります。
式が評価された時の、現在行の行番号を戻します。Row()は、列名に対する添え字など、どのような計算式でも使用できます。なお、列名に特に添え字が指定されていない場合、デフォルトの添え字はRow()です。
指定した列の、現在行以外の行の値を取り出します。リストから[Subscript]を選択し、添え字(サブスクリプト)の引数に行番号を入力します。添え字に指定した行番号がデータに存在しない場合は、欠測値となります。列名に添え字を指定しない場合は、現在行を参照します。行番号の指定を削除するには、行番号の部分を選択して削除し、 そして、空白のボックスを削除します。
計算式CountRow() – CountRow()–1は、Countという列の値の差を、添え字を使って計算します。 この結果は、Dif()関数を使って戻される値と同じです。Row()が1の場合は、欠測値が戻されます。
この例は、添え字によって再帰的な計算を行う方法を示しています。この例の計算式では、計算式を含む列そのものが参照されています。そして、計算式中の列に対する添え字は、先に計算された行(行1から(i–1)まで)だけを参照するようにしています。なお、このFibonacci数列の計算には、条件式と比較の関数が使われています。詳細については、第 “条件付き関数”および第 “比較関数”を参照してください。