[Bioperl-l] Fwd: SimpleAlign bug?
mkiwala at watson.wustl.edu
Wed Apr 11 11:51:35 EDT 2007
Kevin Brown wrote:
>> What is going on here? Can anyone remember doing this?
>> Please can I ask what is the purpose of the line @pos = sort
>> @pos; in the select_noncont subroutine of SimpleAlign.pm.
>> In previous versions this line was not present and I could
>> use the function to reorder the alignment e.g in an alignment
>> with 5 sequences I could reorder it to put the second
>> sequence last using $aln->select_noncont(1,3,4,5,2). The sort
>> function stops this, but even if the idea is to sort
>> numerically this dos not work since the sort function as is
>> will put 10 before 2, so that
>> ->select_noncont(1,2,3,4,5,6,7,8,9,10) would reorder the sequences in
>> the alignment to be 1, 10, 2, 3, 4,5, 6, 7, 8,9 .
> Not sure why 10 would come before 2 since perl would interpret that list
> as a series of integers even if they were entered as strings and do the
Because, according to the documentation for Perl's sort function,
sorting occurs "in standard string comparison order" unless the user
specifies another comparison function to use.
More information about the Bioperl-l