如何在J中编写三列数字的函数?

时间:2017-10-16 23:22:57

标签: j

我需要编写一个函数,我只需要输入三个数字col,它将输出一个数字列。所以他们可以计算每一行,最后得到一行数。例如,X = 1 2 3,Y = 2 3 4,Z = 0 1 2,计算(x-z)/(y-z),因此输出为0.5 0.5 0.5

2 个答案:

答案 0 :(得分:2)

我认为如果你将数学符号转换为J(也使用=:作为赋值而不是=),我已经说明了如何解决它

   X=: 1 2 3
   Y=: 2 3 4
   Z=: 0 1 2
   (X-Z)%(Y-Z) NB. doesn't need second parenthesis pair (X-Z)%Y-Z also works
0.5 0.5 0.5

再次阅读你想要的是数字而不是行的列,所以我们只需使用monadic ,.“Ravel Items”将行更改为列,它会获取每个项目并使其成为一行。在这种情况下,每个项目都是一个原子,行被制成列,结果是一列。

   ex=: ,.X
   why=: ,. Y
   zed=: ,. Z
   ex
1
2
3
   why
2
3
4
   zed
0
1
2
   (ex-zed)%why-zed
0.5
0.5
0.5

答案 1 :(得分:0)

如果这与your other question有关,您可以对参数进行包装或整形以传递任意形状:

XPath