docs: def _aggregate_on_chunks(x, f_agg, chunk_len):
      """
      Takes the time series x and constructs a lower sampled version of it by applying the aggregation function f_agg on
      consecutive chunks of length chunk_len
  
      :param x: the time series to calculate the aggregation of
      :type x: numpy.ndarray
      :param f_agg: The name of the aggregation function that should be an attribute of the pandas.Series
      :type f_agg: str
      :param chunk_len: The size of the chunks where to aggregate the time series
      :type chunk_len: int
      :return: A list of the aggregation function over the chunks
      :return type: list
      """
      return [getattr(x[i * chunk_len: (i + 1) * chunk_len], f_agg)() for i in range(int(np.ceil(len(x) / chunk_len)))]