code: def _select_loci(c):
      
      loci_len = {k: len(v) for k, v in c.loci2seq.iteritems()}
      logger.debug("_select_loci: number of loci %s" % len(c.loci2seq.keys()))
      loci_len_sort = sorted(loci_len.iteritems(), key=operator.itemgetter(1), reverse=True)
      max_size = loci_len_sort[0][1]
      logger.debug("_select_loci: max size %s" % max_size)
      loci_clean = {locus: c.loci2seq[locus] for locus, size in loci_len_sort if size > 0.8 * max_size}
      c.loci2seq = loci_clean
      removed = list(set(c.idmembers.keys()) - set(_get_seqs(c)))
      c.add_id_member(removed, loci_len_sort[0][0])
      logger.debug("_select_loci: number of loci %s after cleaning" % len(c.loci2seq.keys()))
      return c
docs: Select only loci with most abundant sequences