astroman has asked for the wisdom of the Perl Monks concerning the following question:
Is there a PDL-threaded way to create a piddle of medians of portions of another piddle? Like this, but with an arbitrary "step" in the where statements:
Where instead of a huge number of $a(($b>n*x)*($b<=(n+1)*x);?)->medover statements, I could just specify the "x" to use? What I'm attempting to accomplish is a sort of "chunky" fit of data, condensing a large number of points into a series of non-overlapping representative medians.pdl> $b = pdl (0,1,2,3,4,5,6,7,8,9,10,10.5,11,11.5,12,12.5,13,13.5,14, +14.5) pdl> p $b [0 1 2 3 4 5 6 7 8 9 10 10.5 11 11.5 12 12.5 13 13.5 14 14.5] pdl> $a = pdl (0,6,18,7,19,3,10,2,12,4,8,9,1,15,11,11,19,17,0,9) pdl> p $a [0 6 18 7 19 3 10 2 12 4 8 9 1 15 11 11 19 17 0 9] pdl> $d = pdl($a(($b>0)*($b<=5);?)->medover, $a(($b>5)*($b<=10);?)->me +dover, $a(($b>10)*($b<=15);?)->medover) pdl> p $d [7 8 11]
Thanks for your help!
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Grouping one piddle based on ranges of another
by kevbot (Vicar) on Aug 27, 2015 at 06:47 UTC | |
by astroman (Novice) on Aug 28, 2015 at 09:11 UTC | |
|
Re: Grouping one piddle based on ranges of another
by djerius (Beadle) on Aug 26, 2015 at 19:25 UTC | |
by astroman (Novice) on Aug 27, 2015 at 01:23 UTC |