2017-05-26 9 views

答えて

2

http://code.kx.com/wiki/JB:QforMortals2/functions#Functional_Forms_of_Amend

@ [L; I; F; y]の
L =あなたのリスト私は要素の=インデックス
Fを変更する
=適用する関数
y = fの第2パラメータ

+を関数に配置し、ログ出力を追加することで、何が行われているかを確認できます。この場合、2番目の要素[email protected]にインデックスを付けて、(8 9;10;11 12)を取得し、3を加算し、(11 12;13;14 15)に結果を入力し、次の入力として3を加算して結果を(14 15;16;17 18)にします。

q)@[d;1 1 1;{0N!("x is:",.Q.s1 x;"y is:",.Q.s1 y);x+y};3] 
    ("x is:(8 9;10;11 12)";"y is:3") 
    ("x is:(11 12;13;14 15)";"y is:3") 
    ("x is:(14 15;16;17 18)";"y is:3") 
    (1 2 3;4 5 6 7) 
    (17 18;19;20 21) 
    (13 14;15 16 17 18;19 20) 

それとも以上使用して見ることができます(/):

q)@/[d;;{0N!(x;y);x+y};3]1 1 1 
    ((8 9;10;11 12);3) 
    ((11 12;13;14 15);3) 
    ((14 15;16;17 18);3) 
    (1 2 3;4 5 6 7) 
    (17 18;19;20 21) 
    (13 14;15 16 17 18;19 20) 
関連する問題