Пример #1
0
 def test_distance(self):
     dist = ncd.Distance(self.pep_records)
     matrix = distmatrix.create(self.pep_records.id_list, dist)
     exp = [
         "   4", "seq1       0.0000000 0.2698413 0.3809524 0.5238095",
         "seq2       0.2698413 0.0000000 0.2950820 0.4666667",
         "seq3       0.3809524 0.2950820 0.0000000 0.4754098",
         "seq4       0.5238095 0.4666667 0.4754098 0.0000000"
     ]
     self.assertEqual(matrix.format(), "\n".join(exp))
Пример #2
0
def calc_distances(seqs):
    seq_records = seqrecords.SeqRecords()

    for seq in seqs:
        seq_records.add(seq.name, "".join(seq.sequence))

    dist = ncd.Distance(seq_records)
    matrix = distmatrix.create(seq_records.id_list, dist)

    return matrix.data
Пример #3
0
def main():
    parser = get_parser()
    args = validate_args(parser)

    seq_records = seqrecords.read_fasta(args.fasta)
    dist = ncd.Distance(seq_records)
    matrix = distmatrix.create(seq_records.id_list, dist)

    if args.out:
        oh = open(args.out, 'w')
        matrix.write_to_file(oh, args.outfmt)
        oh.close()
    else:
        matrix.display(args.outfmt)
Пример #4
0
    outfile = sys.argv[3]

input_file = open(infile, 'r')
seq_records = seqrecords.read_fasta(input_file)
input_file.close()

#choose one method to compute distance matrix
if method == "bbc":
    alphabet = seqcontent.get_alphabet('protein')
    vector = bbc.create_vectors(seq_records, 10, alphabet)
    dist = bbc.Distance(vector)
    matrix = distmatrix.create(seq_records.id_list, dist)
    matrix.display()

elif method == "ncd":
    dist = ncd.Distance(seq_records)
    matrix = distmatrix.create(seq_records.id_list, dist)
    matrix.display()

elif method == "wmetric":
    matrix = subsmat.get('blosum62')
    dist = wmetric.Distance(seq_records, matrix)
    matrix = distmatrix.create(seq_records.id_list, dist)
    matrix.display()

elif method == "d2":
    patterns = []
    for i in range(1, 5 + 1):
        p = word_pattern.create(seq_records.seq_list, i)
        patterns.append(p)
Пример #5
0
 def test_complexities(self):
     dist = ncd.Distance(self.pep_records)
     exp = [((0, ), 63.0), ((0, 1), 77.0), ((0, 2), 85.0), ((0, 3), 70.0),
            ((1, ), 60.0), ((1, 2), 78.0), ((1, 3), 65.0), ((2, ), 61.0),
            ((2, 3), 66.0), ((3, ), 37.0)]
     self.assertEqual(exp, sorted(dist._complexity.items()))