skbio.alignment.TabularMSA.sort#
- TabularMSA.sort(level=None, ascending=True)[source]#
Sort sequences by index label in-place.
- Parameters:
- levelint or object, optional
Index level to sort on when index is a
pd.MultiIndex
. Does nothing otherwise.- ascending: bool, optional
If
False
, sort in descending (i.e., reverse) order.
See also
Notes
This is a passthrough to
pd.Series.sort_index
internally.Examples
Create a
TabularMSA
object with sequence identifiers as index labels:>>> from skbio import DNA, TabularMSA >>> seqs = [DNA('ACG', metadata={'id': 'c'}), ... DNA('AC-', metadata={'id': 'b'}), ... DNA('AC-', metadata={'id': 'a'})] >>> msa = TabularMSA(seqs, minter='id') >>> msa TabularMSA[DNA] --------------------- Stats: sequence count: 3 position count: 3 --------------------- ACG AC- AC- >>> msa.index Index(['c', 'b', 'a'], dtype='object')
Sort the sequences in alphabetical order by index label:
>>> msa.sort() >>> msa TabularMSA[DNA] --------------------- Stats: sequence count: 3 position count: 3 --------------------- AC- AC- ACG >>> msa.index Index(['a', 'b', 'c'], dtype='object')
Note that since the sort is in-place, the
TabularMSA
object is modified (a new object is not returned).