code: def summary_stats(data):
      
  
      if data is None:
          data = []
      data = sorted(data)
  
      if len(data) < 1:
          return SummaryStats(None, None, None, None, None, None, None, [])
  
      _median = median(data)
  
      _mean = mean(data)
      _std = std(data)
      _minimum = minimum(data)
      _maximum = maximum(data)
      _kurtosis = kurtosis(data)
      _skewness = skewness(data)
      _distribution = data
  
      return SummaryStats(_mean, _std, _minimum, _maximum,
                          _median, _skewness, _kurtosis, _distribution)
docs: Returns a :class:`~bandicoot.helper.maths.SummaryStats` object
      containing statistics on the given distribution.
  
      Examples
      --------
      >>> summary_stats([0, 1])
      SummaryStats(mean=0.5, std=0.5, min=0.0, max=1.0, median=0.5, skewness=0.0, kurtosis=1.0, distribution=[0, 1])