skbio.alignment.TabularMSA.sort

TabularMSA.sort(level=None, ascending=True)[源代码]

按索引标签就地排序序列。

参数:
  • level (int or object, optional) -- 当索引为 pd.MultiIndex . 没有别的办法。

  • ascending (bool, optional) -- 如果 False ,按降序(即反向)排序。

备注

这是通往 pd.Series.sort_index 内部的。

示例

创建一个 TabularMSA 以序列标识符作为索引标签的对象:

>>> 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')

按索引标签的字母顺序对序列进行排序:

>>> msa.sort()
>>> msa
TabularMSA[DNA]
---------------------
Stats:
    sequence count: 3
    position count: 3
---------------------
AC-
AC-
ACG
>>> msa.index
Index(['a', 'b', 'c'], dtype='object')

请注意,由于排序已就绪,因此 TabularMSA 对象被修改(新对象是 not 返回)。