プラス(+)演算子を使用して数値を追加しようとしたときの結果に混乱したことがありますか? 問題を回避するためにSum()関数を発見したかもしれませんが、なぜそれが機能するのかを実際には理解していません。 このブログ投稿では、Add()関数、プラス(+)演算子、およびスクリプトまたは列の数式から必要な結果を取得するのに役立つSum()関数について説明します。

Add()関数から始めましょう。 プラス(+)がAdd()関数のシンボリック表現であることをご存知ですか? です! つまり、次の2つの式はまったく同じです。
1 + 2; //Returns 3
Add( 1, 2 ); //Returns 3
Add()関数とplus演算子は、合計値を計算するために値を加算します。 引数は、数値、行列、または数値のリストにすることができます。
しかし、値の1つが数値の欠落(。)である場合はどうなりますか? 引数のいずれかが欠落値である場合、Add()関数は欠落を返します。
前の例では、どちらの式でも結果は3でした。 その上で、欠落している値が引数の1つである場合、3ではなく欠落している値が返されます。
1 + . + 2; //Returns missing
Add( 1, ., 2 ); //Returns missing
では、欠落している値を除いた合計値をどのように取得しますか? これがSum()関数の出番です。 Sum()関数も値を加算して合計値を計算しますが、無視します欠測値。
以下は、Sum()関数の構文です。 引数がコンマで区切られ、欠落していないすべての引数の合計値が計算されることに注意してください。
Sum( 1, ., 2 ); //Returns 3
Sum()は行方不明を返すことができますか? ええ、はい、できます。 Sum()関数に提供された引数がすべて値が欠落していると、結果も欠落します。 この例では、xとyの両方の値が欠落しています。
x = y = .;
Sum( x, y ); //Returns missing
また、plus演算子を使用して引数を指定できると考えてつまずかないでください。
Sum( 1 + . + 2 ); ); //Returns missing
あなたがそれをするとき、 JMPこれは、Add()関数を使用する1つの引数と見なされます。 また、引数のいずれかが欠落値である場合、Add()関数は欠落を返すことに注意してください。
Sum( Add( 1, ., 2 ) ); //Returns missing
これは本質的にこれと同じです:
Sum( . ); //Returns missing
その例を変更して、次のような2つの引数を含める場合:
Sum( 100, 1 + . + 2 ); //Returns 100
次のように、引数が100で欠落しているため、結果は100になります。
Sum( 100, . ); //Returns 100
これが、Add()、plus(+)、およびSum()の使用法を明確にするのに役立つことを願っています。