code: def iris_data(version="uci"):
      """Iris flower dataset.
  
      Source : https://archive.ics.uci.edu/ml/datasets/Iris
      Number of samples : 150
      Class labels : {0, 1, 2}, distribution: [50, 50, 50]
          0 = setosa, 1 = versicolor, 2 = virginica.
  
      Dataset Attributes:
  
          - 1) sepal length [cm]
          - 2) sepal width [cm]
          - 3) petal length [cm]
          - 4) petal width [cm]
  
  
      Parameters
      --------
      version : string, optional (default: 'uci').
        Version to use {'uci', 'corrected'}. 'uci' loads the dataset
        as deposited on the UCI machine learning repository, and
        'corrected' provides the version that is consistent with
        Fisher's original paper. See Note for details.
  
  
      Returns
      --------
      X, y : [n_samples, n_features], [n_class_labels]
          X is the feature matrix with 150 flower samples as rows,
          and 4 feature columns sepal length, sepal width,
          petal length, and petal width.
          y is a 1-dimensional array of the class labels {0, 1, 2}
  
  
      Note
      --------
      The Iris dataset (originally collected by Edgar Anderson) and
      available in UCI's machine learning repository is different from
      the Iris dataset described in the original paper by  R.A. Fisher [1]).
      Precisely, there are two data points (row number
      34 and 37) in UCI's Machine Learning repository are different from the
      origianlly published Iris dataset. Also, the original version of the Iris
      Dataset, which can be loaded via `version='corrected'` is the same
      as the one in R.
  
      [1] . A. Fisher (1936). "The use of multiple measurements in taxonomic
      problems". Annals of Eugenics. 7 (2): 179–188
  
      Examples
      -----------
      For usage examples, please see
      https://rasbt.github.io/mlxtend/user_guide/data/iris_data/
  
      """
      if version == "uci":
          tmp = np.genfromtxt(fname=DATA_PATH, delimiter=",")
          X, y = tmp[:, :-1], tmp[:, -1]
          y = y.astype(int)
      elif version == "corrected":
          tmp = np.genfromtxt(fname=DATA_PATH, delimiter=",")
          X, y = tmp[:, :-1], tmp[:, -1]
          X[34] = [4.9, 3.1, 1.5, 0.2]
          X[37] = [4.9, 3.6, 1.4, 0.1]
          y = y.astype(int)
      else:
          raise ValueError("version must be 'uci' or 'corrected'.")
      return X, y
  
label_desc: Use image node_id 1 for calling a global function with example usage: iris_data(version) and returns: X,  y