def get_qtls_from_mapqtl_data(matrix, threshold, inputfile):
    trait_name = inputfile.split(')_', 1)[1].split('.mqo')[0]
    qtls = []
    qtl = None
    for entry in matrix[1:]:
        if qtl is None:
            qtl = entry
        if qtl[1] != entry[1]:
            if float(qtl[4]) > float(threshold):
                qtl[0] = trait_name
                qtls.append(qtl)
            qtl = entry
        if entry[4] == '':
            entry[4] = 0
        if qtl[4] == '':
            qtl[4] = 0
        if float(entry[4]) > float(qtl[4]):
            qtl = entry
    if float(qtl[4]) > float(threshold):
        qtl[0] = trait_name
        if qtl not in qtls:
            qtls.append(qtl)
    return qtls