code: def cull_to_timestep(self, timestep=1):
          
          valid_s = self.header.analysis_period.VALIDTIMESTEPS.keys()
          assert timestep in valid_s, \
              'timestep {} is not valid. Choose from: {}'.format(timestep, valid_s)
  
          new_ap, new_values, new_datetimes = self._timestep_cull(timestep)
          new_header = self.header.duplicate()
          new_header._analysis_period = new_ap
          new_coll = HourlyDiscontinuousCollection(
              new_header, new_values, new_datetimes)
          new_coll._validated_a_period = True
          return new_coll
docs: Get a collection with only datetimes that fit a timestep.