[Bioperl-l] Fwd: SimpleAlign bug?
Kevin Brown
Kevin.M.Brown at asu.edu
Thu Apr 12 15:24:15 UTC 2007
> >> 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 sort.
> >
> >
> 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.
OK, guess I never realized that since I've used just "sort @array" and
gotten things back how I expected them to be.
More information about the Bioperl-l
mailing list