eachPost (:O)

语法

eachPost(func, X, [post])

<operator>:O Y

Y <operator>:O X

参数

func 是一个二元函数。

X 可以是向量、矩阵或表。当X是向量时,post必须是标量;当X是矩阵时,post必须是向量;当X是表时,post必须是字典;当post未指定时,结果的最后一个元素为NULL。

详情

将给定函数/运算符应用到所有相邻的数据对上。

eachPost 高阶函数等同于:F(X[0], X[1]), F(X[1], X[2]), ..., F(X[n], post).

例子

$ x=1..10;
$ eachPost(sub, x);
[-1,-1,-1,-1,-1,-1,-1,-1,-1,]
// 等同于 [1-2, 2-3, ..., 9-10, NULL]

$ +:O x;
[3,5,7,9,11,13,15,17,19,]
// 等同于 [1+2, 2+3, ..., 9+10, NULL]

$ x +:O 0;
[3,5,7,9,11,13,15,17,19,10]
// 等同于 [1+2, 2+3, ..., 9+10, 10+0]

$ x=1..12$3:4;
$ x;

col1

col2

col3

col4

1

4

7

10

2

5

8

11

3

6

9

12

$ -:O x;

col1

col2

col3

col4

-3

-3

-3

-3

-3

-3

-3

-3

-3

$ eachPost(\, x, x[0]);

col1

col2

col3

col4

0.25

0.571429

0.7

10

0.4

0.625

0.727273

5.5

0.5

0.666667

0.75

4