code: def get_chromosomes_summary(snps):
      
  
      if isinstance(snps, pd.DataFrame):
          chroms = list(pd.unique(snps["chrom"]))
  
          int_chroms = [int(chrom) for chrom in chroms if chrom.isdigit()]
          str_chroms = [chrom for chrom in chroms if not chrom.isdigit()]
  
          # https://codereview.stackexchange.com/a/5202
          def as_range(iterable):
              l = list(iterable)
              if len(l) > 1:
                  return "{0}-{1}".format(l[0], l[-1])
              else:
                  return "{0}".format(l[0])
  
          # create str representations
          int_chroms = ", ".join(
              as_range(g)
              for _, g in groupby(int_chroms, key=lambda n, c=count(): n - next(c))
          )
          str_chroms = ", ".join(str_chroms)
  
          if int_chroms != "" and str_chroms != "":
              int_chroms += ", "
  
          return int_chroms + str_chroms
      else:
          return ""
docs: Summary of the chromosomes of SNPs.
  
      Parameters
      ----------
      snps : pandas.DataFrame
  
      Returns
      -------
      str
          human-readable listing of chromosomes (e.g., '1-3, MT'), empty str if no chromosomes