I normally do it this way $shuffled = $data(qsorti(random($x)))
Marek On Thu, 6 Aug 2015 at 18:06 David Mertens <[email protected]> wrote: > Hey Nick, > > I'm not sure how fast this is, but this is what I do when I need to > randomly sort things: > > # Assuming you have $data already declared... > $shuffled = cat($data->random, $data)->transpose->qsortvec->(1)->flat > > The call "->(1)" is a NiceSliceism; replace with a slice method call if > that's not on. > > Bear in mind that PDL's random number generator is Perl's default, which > is not sufficiently random for most Monte Carlo stuff. I've never needed > anything more sophisticated for my work, but I suspect that the PDL > bindings to GSL provide random generators of higher quality. > > Good luck! > David > > On Thu, Aug 6, 2015 at 12:59 PM, Nick Wright <[email protected]> > wrote: > >> Hi everyone >> >> I need help with something that I think *should* be simple with Perl/PDL >> but I can't find the command for it. >> >> I basically just want to randomly re-order a 1-dimensional, moderately >> long (1500 entries) piddle and I can't find a simple way. I need to do this >> for the purposes of a Monte Carlo simulation, so I was hoping PDL might >> have an efficient way to do it so I can repeat is 1000s of times quickly! >> >> Thanks in advance for the help! >> >> Cheers, >> >> Nick >> >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> pdl-general mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/pdl-general >> >> > > > -- > "Debugging is twice as hard as writing the code in the first place. > Therefore, if you write the code as cleverly as possible, you are, > by definition, not smart enough to debug it." -- Brian Kernighan > > ------------------------------------------------------------------------------ > _______________________________________________ > pdl-general mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/pdl-general > -- Dr Marek Gierliński The Data Analysis Group The Barton Group Computational Biology and GRE School of Life Sciences University of Dundee, Dundee, Scotland, UK. Tel: +44 1382 386427 www.compbio.dundee.ac.uk/dag.html
------------------------------------------------------------------------------
_______________________________________________ pdl-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/pdl-general
