def __init__(self, sequences, metadata=None, positional_metadata=None, minter=None, index=None): if isinstance(sequences, TabularMSA): if metadata is None and sequences.has_metadata(): metadata = sequences.metadata if (positional_metadata is None and sequences.has_positional_metadata()): positional_metadata = sequences.positional_metadata if minter is None and index is None: index = sequences.index self._seqs = pd.Series([]) self.extend(sequences, minter=minter, index=index) MetadataMixin._init_(self, metadata=metadata) PositionalMetadataMixin._init_(self, positional_metadata=positional_metadata)
def __init__(self, sequences, metadata=None, positional_metadata=None, minter=None, index=None): # TODO: optimize this to not append Series for each sequence. self._seqs = pd.Series([]) for sequence in sequences: self.append(sequence) if minter is not None and index is not None: raise ValueError( "Cannot use both `minter` and `index` at the same time.") if minter is not None: self.reassign_index(minter=minter) elif index is not None: # Cast to Index to identify tuples as a MultiIndex to match # pandas constructor. Just setting would make an index of tuples. if not isinstance(index, pd.Index): index = pd.Index(index) self.index = index MetadataMixin._init_(self, metadata=metadata) PositionalMetadataMixin._init_( self, positional_metadata=positional_metadata)
def __init__(self, axis_len, positional_metadata=None): self._axis_len = axis_len PositionalMetadataMixin._init_( self, positional_metadata=positional_metadata)
def __init__(self, axis_len, positional_metadata=None): self._axis_len = axis_len PositionalMetadataMixin._init_(self, positional_metadata=positional_metadata)