code: def group_by_month(self):
          
          data_by_month = OrderedDict()
          for d in xrange(1, 13):
              data_by_month[d] = []
          for v, dt in zip(self._values, self.datetimes):
              data_by_month[dt.month].append(v)
          return data_by_month
docs: Return a dictionary of this collection's values grouped by each month.
  
          Key values are between 1-12.