code: def _exog_gen(exog, partitions):
      """partitions exog data"""
  
      n_exog = exog.shape[0]
      n_part = np.ceil(n_exog / partitions)
  
      ii = 0
      while ii < n_exog:
          jj = int(min(ii + n_part, n_exog))
          yield exog[ii:jj, :]
          ii += int(n_part)
  
file_path: statsmodels/examples/python/distributed_estimation.py
imports: import numpy
  from scipy.stats.distributions import norm
  from statsmodels.base.distributed_estimation import DistributedModel
  from statsmodels.genmod.generalized_linear_model import GLM
  from statsmodels.genmod.families import Gaussian
  from statsmodels.base.distributed_estimation import _est_regularized_naive, _join_naive
  from statsmodels.base.distributed_estimation import _est_unregularized_naive, DistributedResults
label_desc: Use image node_id 1 for calling a global function with example usage: _exog_gen(exog, partitions) without return types