docs: def DistFitDataset(Dat):
      """
      Given a data matrix, this returns the per-gene fit error for the
      Poisson, Normal, and Log-Normal distributions.
  
      Args:
          Dat (array): numpy array with shape (genes, cells)
  
      Returns:
          d (dict): 'poiss', 'norm', 'lognorm' give the fit error for each distribution.
      """
      #Assumes data to be in the form of a numpy matrix 
      (r,c) = Dat.shape
      Poiss = np.zeros(r)
      Norm = np.zeros(r)
      LogNorm = np.zeros(r)
      for i in range(r):
          temp = GetDistFitError(Dat[i])
          Poiss[i] = temp['poiss']
          Norm[i] = temp['norm']
          LogNorm[i] = temp['lognorm']
      d = {}
      d['poiss'] = Poiss
      d['norm'] = Norm
      d['lognorm'] = LogNorm
      return d