code: def population_counts(
          self,
          population_size,
          weighted=True,
          include_missing=False,
          include_transforms_for_dims=None,
          prune=False,
      ):
          
          population_counts = [
              slice_.population_counts(
                  population_size,
                  weighted=weighted,
                  include_missing=include_missing,
                  include_transforms_for_dims=include_transforms_for_dims,
                  prune=prune,
              )
              for slice_ in self.slices
          ]
  
          if len(population_counts) > 1:
              return np.array(population_counts)
          return population_counts[0]
docs: Return counts scaled in proportion to overall population.
  
          The return value is a numpy.ndarray object. Count values are scaled
          proportionally to approximate their value if the entire population
          had been sampled. This calculation is based on the estimated size of
          the population provided as *population size*. The remaining arguments
          have the same meaning as they do for the `.proportions()` method.
  
          Example::
  
              >>> cube = CrunchCube(fixt_cat_x_cat)
              >>> cube.as_array()
              np.array([
                 [5, 2],
                 [5, 3],
              ])
              >>> cube.population_counts(9000)
              np.array([
                  [3000, 1200],
                  [3000, 1800],
              ])