class_docstr: The ArrayIterator class iterates over minibatches of data that
  have been preloaded into memory in the form of numpy arrays. This may be used when
  the entire dataset (e.g. CIFAR-10 or MNIST) is small enough to fit in memory. For example::
  
      X = np.random.rand(10000, 3072)
      y = np.random.randint(0, 10, 10000)
      train = ArrayIterator(X=X, y=y, nclass=10, lshape=(3, 32, 32))
  
  The above will create the ArrayIterator object. This object implements python's __iter__
  method, and returns one minibatch of data, formatted as tuple of (input, label), with
  each iteration. The minibatch size is controlled by the generated backend.
  
  X should be an ndarray of shape (# example, # features). For images, the features should be
  formatted in (channel, height, width) order. The `lshape` keyword indicates the local shape of
  the images in (channel, height, width) format.
  
  For classification tasks, the labels `y` should be integers from 0 to K-1, where K is the total
  number of classes. When `y` is not provided, the input features themselves will be returned
  as the target values (e.g. autoencoder).
  
  In regression tasks, where `y` is not a categorical label, set `make_onehot` to `False`.
  For example::
  
      X = np.random.rand(1000, 1)
      y = 2*X + 1
      train = ArrayIterator(X=X, y=y, make_onehot=False)
  
  For more information, see the Loading data section of the documentation.
docstr: Resets the starting index of this dataset to zero. Useful for calling
  repeated evaluations on the dataset without having to wrap around
  the last uneven minibatch. Not necessary when data is divisible by batch size
docstr_tok: ["Resets","the","starting","index","of","this","dataset","to","zero",".","Useful","for","calling","repeated","evaluations","on","the","dataset","without","having","to","wrap","around","the","last","uneven","minibatch",".","Not","necessary","when","data","is","divisible","by","batch","size"]
code: def reset(self):
      """
      Resets the starting index of this dataset to zero. Useful for calling
      repeated evaluations on the dataset without having to wrap around
      the last uneven minibatch. Not necessary when data is divisible by batch size
      """
      self.start = 0
  
file_path: neon/neon/data/dataiterator.py
imports: from builtins import zip
  import numpy
  from neon import NervanaObject
label_desc: Use image node_id 3 for calling the ArrayIterator obj's underlying member method code with example usage: obj.reset() without return types