def __init__(self, name, info = {}): self._data = {} query = {} query.update(info) query['name'] = name self._info = query for piece in stats_collection.find(query): self._data[int(piece['gramLen'])] = piece for n in ngram_range(): if not n in self._data: self._data[n] = {'gramLen':n} self._data[n].update(self._info)
def aggregate(self, query): for piece in stats_collection.find(query): n = piece['gramLen'] new = piece['data'] curr = self.nGram(n) self._agg_ngram(curr, new, n)