如何计算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无济于事!答案 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