:param mask: boolean mask
        :return: a DataAccessObject with a subset of rows matching mask

def where(self, mask):
        """
        :param mask: boolean mask
        :return: a DataAccessObject with a subset of rows matching mask
        """
        assert len(mask) == len(self)
        return DataAccessObject({k: self.dict[k][mask] for k in self.dict})