class_docstr: A general QA container to take Q&A dataset, which has already been
  vectorized and create a data iterator to feed data to training.
class_docstr_tok: ["A","general","QA","container","to","take","Q","&","A","dataset",",","which","has","already","been","vectorized","and","create","a","data","iterator","to","feed","data","to","training","."]
code: def __init__(self, story, query, answer):
      super(QA, self).__init__(name=None)
      self.story, self.query, self.answer = story, query, answer
      self.ndata = len(self.story)
      self.nbatches = self.ndata // self.be.bsz
      self.story_length = self.story.shape[1]
      self.query_length = self.query.shape[1]
      self.shape = [(self.story_length, 1), (self.query_length, 1)]
  
imports: from builtins import map
  import numpy
  import os
  import re
  import tarfile
  from neon import logger
  from neon.data.dataiterator import NervanaDataIterator
  from neon.data.datasets import Dataset
  from neon.data.text_preprocessing import pad_sentences
  from functools import reduce
label_desc: Use image node_id 1 to create a new QA object from inherited base classes: NervanaDataIterator with example: obj = QA(story, query, answer)