APL:向量/数组中'n'个相邻数字的平均向量

时间:2013-05-27 16:27:07

标签: vector apl

如何计算APL中向量中n个相邻数的平均向量?

考虑向量:a←2 3 4 5 6

输入:2应返回2.5 3.5 4.5 5.5,

3应该返回3 4 5,

4应该返回3.5 4.5。

在这种情况下,avg←(+ / a)÷⍴a无济于事!

1 个答案:

答案 0 :(得分:5)

使用n减少来得到总和,然后除以:

f←{(⍺+/⍵)÷⍺}
      2 f 1 2 3 4 5
1.5 2.5 3.5 4.5
      3 f 1 2 3 4 5
2 3 4
      4 f 1 2 3 4 5
2.5 3.5

哎呀,现在有你的确切输入:

f←{(⍺+/⍵)÷⍺}
       2 f 2 3 4 5 6
2.5 3.5 4.5 5.5
       3 f 2 3 4 5 6
3 4 5
       4 f 2 3 4 5 6
3.5 4.5