seems so, thank you
-------| http://ifni.co


On Wed, Feb 19, 2014 at 9:08 PM, Maggie X <[email protected]> wrote:
> Late to the discussion, but this will work too
>
> pdl> use PDL::Stats
>
> pdl> $a = pdl [qw[-1 0 0 0 0 0 0 0 0 -1 0 1 1 -2 10 -2 1 2 0 0 0 1 1 -1 0 1
> 0 0 0 0 0]]
>
> pdl> p $a->uniq
> [-2 -1 0 1 2 10]
>
> # this produces the frequencies of the uniq'ed elements
>
> pdl> p $d = $a->qsort->iv_cluster->sumover
> [2 3 18 6 1 1]
>
>
> Best,
> Maggie
>
>
> On Tue, Feb 11, 2014 at 12:57 AM, Craig DeForest <[email protected]>
> wrote:
>>
>> To be fair, rle could and should generate a truncated output PDL for
>> itself...
>>
>>
>> On Feb 10, 2014, at 9:45 PM, Derek Lamb <[email protected]> wrote:
>>
>> > In your $idx below, you don't want the second occurrence of 0 in $b, you
>> > want the first occurrence of 0 in $a.  Because if your data for some reason
>> > has no 0 in it, then your method fails.  All those zeroes in $rv are to be
>> > expected--the $a and $b arrays have the same size as your input data, so 
>> > you
>> > have to truncate.  Re-read the rle() docs.
>> >
>> > For finding how many numbers fall in a given range, hist() is your
>> > friend if the ranges are consecutive and evenly spaced.
>> >
>> > pdl> ??sort
>> >
>> > will give you a list of all the sorting routines.  It sounds like you
>> > want qsortvec().
>> >
>> >
>> > On Feb 10, 2014, at 9:20 PM, mraptor wrote:
>> >
>> >> How do I sort multicolumns matrix by single columns...
>> >> -------| http://ifni.co
>> >>
>> >>
>> >> On Mon, Feb 10, 2014 at 10:24 PM, mraptor <[email protected]> wrote:
>> >>> this worked out :
>> >>> sub freq {
>> >>>  my $data = shift;
>> >>>  my ($a,$b) = rle qsort $data;
>> >>>  #find the idx of the second zero
>> >>>  my $idx = which($b == 0)->(1);#2nd elem
>> >>>  my $rv = pdl $b(1:$idx-1), $a(1:$idx-1);
>> >>>  return $rv
>> >>> }
>> >>> -------| http://ifni.co
>> >>>
>> >>>
>> >>> On Mon, Feb 10, 2014 at 10:06 PM, mraptor <[email protected]> wrote:
>> >>>> thanks..this seem to do it :
>> >>>>
>> >>>> ($a,$b) = rle qsort $data;
>> >>>> $rv = pdl $a, $b;
>> >>>>
>> >>>> the only thing which is no big deal is that it seems to if I process
>> >>>> 100 elements and I get let say 5 elem only after i remove the
>> >>>> repetitions it still returns 100 elements instead 5..
>> >>>>
>> >>>> pdl> p $rv->transpose
>> >>>>
>> >>>> [
>> >>>> [-5  1]
>> >>>> [-3  3]
>> >>>> [-2  7]
>> >>>> [-1 17]
>> >>>> [ 0 46]
>> >>>> [ 1 17]
>> >>>> [ 2  3]
>> >>>> [ 3  1]
>> >>>> [ 4  2]
>> >>>> [ 5  1]
>> >>>> [ 6  1]
>> >>>> [10  1]
>> >>>> [ 0  0]
>> >>>> [ 0  0]
>> >>>>
>> >>>> ...... alot of zeros after this ... :)
>> >>>>
>> >>>> -------| http://ifni.co
>> >>>>
>> >>>>
>> >>>> On Mon, Feb 10, 2014 at 9:34 PM, Craig DeForest
>> >>>> <[email protected]> wrote:
>> >>>>> Check out rle() -- it is in the standard PDL releases!
>> >>>>>
>> >>>>> (Mobile)
>> >>>>>
>> >>>>>
>> >>>>>> On Feb 10, 2014, at 7:09 PM, mraptor <[email protected]> wrote:
>> >>>>>>
>> >>>>>> Do you guys, know a way to count repeated numbers. f.e. let say I
>> >>>>>> have
>> >>>>>> this pdl :
>> >>>>>>
>> >>>>>> [-1 0 0 0 0 0 0 0 0 -1 0 1 1 -2 10 -2 1 2 0 0 0 1 1 -1 0 1 0 0 0 0
>> >>>>>> 0
>> >>>>>> -2 0 0 -1 0 1 -1 -1 -2 -1 -1 0 0 1 -1 -1 0 0 0 1 0 0 1 -1 -1 1 1 -3
>> >>>>>> -1
>> >>>>>> 0 2 0 6 3 4 5 0 -1 0 -1 -3 -2 0 1 0 1 0 0 4 -3 -5 -2 2 -1 0 1 0 -2
>> >>>>>> 1 1
>> >>>>>> 0 0 0 0 0 0 0 0 -1]
>> >>>>>>
>> >>>>>> how would I create a pdl than contains the number and how many
>> >>>>>> times
>> >>>>>> the number occurred ?
>> >>>>>> What about if I wanted to count numbers in a range...let say the
>> >>>>>> pdl
>> >>>>>> had numbers between 1 and 100 and I wanted to count the numbers
>> >>>>>> between 1-10, 11-20, 21-30,...
>> >>>>>>
>> >>>>>> thanks
>> >>>>>>
>> >>>>>>
>> >>>>>> -------| http://ifni.co
>> >>>>>>
>> >>>>>> _______________________________________________
>> >>>>>> Perldl mailing list
>> >>>>>> [email protected]
>> >>>>>> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
>> >>>>>>
>> >>
>> >> _______________________________________________
>> >> Perldl mailing list
>> >> [email protected]
>> >> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
>> >>
>> >
>> >
>> > _______________________________________________
>> > Perldl mailing list
>> > [email protected]
>> > http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
>> >
>>
>>
>> _______________________________________________
>> Perldl mailing list
>> [email protected]
>> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
>
>
>
> _______________________________________________
> Perldl mailing list
> [email protected]
> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
>

_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to