code: def create_species_bunch(
      species_name, train, test, coverages, xgrid, ygrid
  ):
      """Create a bunch with information about a particular organism
  
      This will use the test/train record arrays to extract the
      data specific to the given species name.
      """
      bunch = Bunch(name=" ".join(species_name.split("_")[:2]))
      species_name = species_name.encode("ascii")
      points = dict(test=test, train=train)
  
      for label, pts in points.items():
          # choose points associated with the desired species
          pts = pts[pts["species"] == species_name]
          bunch["pts_%s" % label] = pts
  
          # determine coverage values for each of the training & testing points
          ix = np.searchsorted(xgrid, pts["dd long"])
          iy = np.searchsorted(ygrid, pts["dd lat"])
          bunch["cov_%s" % label] = coverages[:, -iy, ix].T
  
      return bunch
  
file_path: scikit-learn/examples/applications/plot_species_distribution_modeling.py
imports: from time import time
  import matplotlib.pyplot
  import numpy
  from sklearn import metrics, svm
  from sklearn.datasets import fetch_species_distributions
  from sklearn.utils import Bunch
label_desc: Use image node_id 2 for calling a global function with example usage: create_species_bunch(species_name, train, test, coverages, xgrid, ygrid) and returns: bunch