docs: def absolute_proportions(proportions, count):
      """
      Split a given integer into n parts according to len(proportions) so they sum up to count and
      match the given proportions.
  
      Args:
          proportions (dict): Dict of proportions, with a identifier as key.
  
      Returns:
          dict: Dictionary with absolute proportions and same identifiers as key.
  
      Example::
  
          >>> absolute_proportions({'train': 0.5, 'test': 0.5}, 100)
          {'train': 50, 'test': 50}
      """
  
      # first create absolute values by flooring non-integer portions
      relative_sum = sum(proportions.values())
      absolute_proportions = {idx: int(count / relative_sum * prop_value) for idx, prop_value in
                              proportions.items()}
  
      # Now distribute the rest value randomly over the different parts
      absolute_sum = sum(absolute_proportions.values())
      rest_value = count - absolute_sum
      subset_keys = sorted(list(proportions.keys()))
  
      for i in range(rest_value):
          key = subset_keys[i % len(subset_keys)]
          absolute_proportions[key] += 1
  
      return absolute_proportions