# Path: alfpy/utils/distance.py
# class Distance(object):
#     def __getitem__(self, seqnum):
#     def get_disttypes(cls):
#     def set_disttype(self, disttype):
#     def __init__(self, vector, disttype):
#     def pwdist_euclid_squared(self, seq1idx, seq2idx):
#     def pwdist_euclid_norm(self, seq1idx, seq2idx):
#     def pwdist_google(self, seq1idx, seq2idx):


from .utils import distance
    from .utils.seqrecords import SeqRecords
    from .utils import distmatrix
        >>> print(_getwords(seq, 2))
        set(['GT', 'CG', 'GC', 'AT', 'TG', 'TA'])

    """
    s = set([])
    for i in range(0, len(seq) - word_size + 1):
        word = seq[i:i + word_size]
        s.add(word)
    return s


class Distance(distance.Distance):
    """Combine vector data with pairwise distance methods that measures
    dissimilarity between sets."""

    def __init__(self, seq_records, word_size, disttype='jaccard'):
        """Create an instance of Distance

        Args:
            seq_records (SeqRecords obj)
            word_size (int): >= 1

        """
        self._vector = [_getwords(s, word_size) for s in seq_records.seq_list]
        self.set_disttype(disttype)

    def pwdist_jaccard(self, seq1idx, seq2idx):
        """Jaccard distance is complementary to the Jaccard coefficient
        and is obtained by subtracting the Jaccard coefficient from 1."""
        s1 = self[seq1idx]

# Path: alfpy/utils/distance.py
# class Distance(object):
#     def __getitem__(self, seqnum):
#     def get_disttypes(cls):
#     def set_disttype(self, disttype):
#     def __init__(self, vector, disttype):
#     def pwdist_euclid_squared(self, seq1idx, seq2idx):
#     def pwdist_euclid_norm(self, seq1idx, seq2idx):
#     def pwdist_google(self, seq1idx, seq2idx):


# Path: alfpy/word_sets_distance.py
from .utils import distance
    from .utils.seqrecords import SeqRecords
    from .utils import distmatrix

        >>> print(_getwords(seq, 2))
        set(['GT', 'CG', 'GC', 'AT', 'TG', 'TA'])

    """
    s = set([])
    for i in range(0, len(seq) - word_size + 1):
        word = seq[i:i + word_size]
        s.add(word)
    return s


class Distance(distance.Distance):
    """Combine vector data with pairwise distance methods that measures
    dissimilarity between sets."""

    def __init__(self, seq_records, word_size, disttype='jaccard'):
        """Create an instance of Distance

        Args:
            seq_records (SeqRecords obj)
            word_size (int): >= 1

        """
        self._vector = [_getwords(s, word_size) for s in seq_records.seq_list]
        self.set_disttype(disttype)

    def pwdist_jaccard(self, seq1idx, seq2idx):
        """Jaccard distance is complementary to the Jaccard coefficient
        and is obtained by subtracting the Jaccard coefficient from 1."""
        s1 = self[seq1idx]

        s2 = self[seq2idx]