docs: def group(self, id=None, **kwargs):
          """
          Adds a group stage at aggregation query
          :param id: The group id. Default value is None and group merge all documents
          :param kwargs: The parameters-methods of group stage
          :return: The current object
          """
          if type(id) == str:
              if not id.startswith('$'):
                  id = '$' + id
          query = {
              '_id': id
          }
          for key in kwargs:
              query[key] = kwargs[key]
          self._q.append({
              '$group': query
          })
          return self