Talk:Simple examples: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
(Created page with "Neither 2 mave 3 4.5 7 21 nor 2(+⌿÷≢)/3 4.5 7 21 work in Dyalog APL 18 or GNU APL. --~~~~")
 
No edit summary
Line 1: Line 1:
== Moving average ==
Neither  
Neither  


Line 8: Line 10:


work in Dyalog APL 18 or GNU APL. --[[User:Andrii Makukha|Andrii Makukha]] ([[User talk:Andrii Makukha|talk]]) 15:19, 26 June 2020 (UTC)
work in Dyalog APL 18 or GNU APL. --[[User:Andrii Makukha|Andrii Makukha]] ([[User talk:Andrii Makukha|talk]]) 15:19, 26 June 2020 (UTC)
You're totally right. It is plain wrong because it tries to use windowed reduction in APL like infix in J. An easy fix would be to combine <source lang=apl inline>(+⌿÷≢)</source> with concatenation <source lang=apl inline>,</source> by atop so that it looks like <source lang=apl inline>2((+⌿÷≢),)/3 4.5 7 21</source> (or <source lang=apl inline>2(+⌿÷≢)⍤,/3 4.5 7 21</source> in Dyalog 18.0); a general solution (allowing window size higher than 2) would be to extract windows and apply average on each of them <source lang=apl inline>(+⌿÷≢)¨ 2,/3 4.5 7 21</source>. I doubt if it's worth keeping either way in this context. --[[User:Bubbler|Bubbler]] ([[User talk:Bubbler|talk]]) 14:07, 27 June 2020 (UTC)

Revision as of 14:07, 27 June 2020

Moving average

Neither

   2 mave 3 4.5 7 21

nor

   2(+⌿÷≢)/3 4.5 7 21

work in Dyalog APL 18 or GNU APL. --Andrii Makukha (talk) 15:19, 26 June 2020 (UTC)

You're totally right. It is plain wrong because it tries to use windowed reduction in APL like infix in J. An easy fix would be to combine (+⌿÷≢) with concatenation , by atop so that it looks like 2((+⌿÷≢),)/3 4.5 7 21 (or 2(+⌿÷≢)⍤,/3 4.5 7 21 in Dyalog 18.0); a general solution (allowing window size higher than 2) would be to extract windows and apply average on each of them (+⌿÷≢)¨ 2,/3 4.5 7 21. I doubt if it's worth keeping either way in this context. --Bubbler (talk) 14:07, 27 June 2020 (UTC)