code: def set_snapshots(self,snapshots):
          
  
          self.snapshots = pd.Index(snapshots)
  
          self.snapshot_weightings = self.snapshot_weightings.reindex(self.snapshots,fill_value=1.)
          if isinstance(snapshots, pd.DatetimeIndex) and _pd_version < '0.18.0':
              snapshots = pd.Index(snapshots.values)
  
          for component in self.all_components:
              pnl = self.pnl(component)
              attrs = self.components[component]["attrs"]
  
              for k,default in attrs.default[attrs.varying].iteritems():
                  pnl[k] = pnl[k].reindex(self.snapshots).fillna(default)
docs: Set the snapshots and reindex all time-dependent data.
  
          This will reindex all pandas.Panels of time-dependent data; NaNs are filled
          with the default value for that quantity.
  
          Parameters
          ----------
          snapshots : list or pandas.Index
              All time steps.
  
          Returns
          -------
          None