Hello WouterVG,
Welcome to the Monastery. You can search the forum it contains a lot of information as your question was asked before e.g. How do I shuffle an array?
Something like that should do what you want, assuming you want to shuffle array element (3 characters).
#!/usr/bin/env perl use strict; use warnings; use Data::Dumper; use List::Util qw(shuffle); my $sequence = "CTGCAC"; # chomp(my $sequence = <STDIN>); my @data; push @data, $1 while ($sequence =~ /(.{1,3})/msxog); print Dumper \@data; my @random = shuffle @data; print Dumper \@random; __END__ $ perl test.pl $VAR1 = [ 'CTG', 'CAC' ]; $VAR1 = [ 'CAC', 'CTG' ];
Update: In case you want to use unpack see bellow:
#!/usr/bin/env perl use strict; use warnings; use Data::Dumper; use List::Util qw(shuffle); my $sequence = "CTGCAC"; # chomp($sequence = <STDIN>); my @trips = unpack("(A3)*", $sequence); print Dumper \@trips; my @shuffled = shuffle @trips ; print Dumper \@shuffled; __END__ perl test.pl $VAR1 = [ 'CTG', 'CAC' ]; $VAR1 = [ 'CAC', 'CTG' ];
Hope this helps, BR.
In reply to Re: Shuffling CODONS
by thanos1983
in thread Shuffling CODONS
by WouterVG
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |