对输入的每一行应用多个函数

Applying multiple functions to each line of the input

我有 2 个归一化函数:norm1 和 norm2。

norm1 =: (- <./) % >./ - <./
norm2 =: %(>./@:|) 

我想像这样将这两个函数应用于以下输入的每一行:

input123 =: i. 2 10

|:(norm1 0{input123),.(norm2 1{input123)

0 0.111111 0.222222 0.333333 0.444444 0.555556 0.666667 0.777778 0.888889 1
0.526316 0.578947 0.631579 0.684211 0.736842 0.789474 0.842105 0.894737 0.947368 1

不是使用 {input123 中提取每一行,有没有更简单的方法将多个动词应用于输入数组的每一行?也许通过制作动词数组并将它们应用于输入的每一行?

不一定是一条线,可以是每个元素("0),也可以是矩阵("2)等更高维的输入数据等

提前感谢您的建议。 =]

您实际上可以用 cyclic gerund:

做您想做的事
   norm1`norm2"1 input123
       0 0.111111 0.222222 0.333333 0.444444 0.555556 0.666667 0.777778 0.888889 1
0.526316 0.578947 0.631579 0.684211 0.736842 0.789474 0.842105 0.894737 0.947368 1