code: def aggcv(rlist, show_stdv=True, show_progress=None, as_pandas=True):
      # pylint: disable=invalid-name
      
      cvmap = {}
      idx = rlist[0].split()[0]
      for line in rlist:
          arr = line.split()
          assert idx == arr[0]
          for it in arr[1:]:
              if not isinstance(it, STRING_TYPES):
                  it = it.decode()
              k, v = it.split(':')
              if k not in cvmap:
                  cvmap[k] = []
              cvmap[k].append(float(v))
  
      msg = idx
  
      if show_stdv:
          fmt = '\tcv-{0}:{1}+{2}'
      else:
          fmt = '\tcv-{0}:{1}'
  
      index = []
      results = []
      for k, v in sorted(cvmap.items(), key=lambda x: x[0]):
          v = np.array(v)
          if not isinstance(msg, STRING_TYPES):
              msg = msg.decode()
          mean, std = np.mean(v), np.std(v)
          msg += fmt.format(k, mean, std)
  
          index.extend([k + '-mean', k + '-std'])
          results.extend([mean, std])
  
  
  
      if as_pandas:
          try:
              import pandas as pd
              results = pd.Series(results, index=index)
          except ImportError:
              if show_progress is None:
                  show_progress = True
      else:
          # if show_progress is default (None),
          # result will be np.ndarray as it can't hold column name
          if show_progress is None:
              show_progress = True
  
      if show_progress:
          sys.stderr.write(msg + '\n')
  
      return results
docs: Aggregate cross-validation results.