docs: def recalculate_satistics(self):
          '''
          update self.Data[specimen]['pars'] for all specimens.
          '''
          gframe = wx.BusyInfo(
              "Re-calculating statistics for all specimens\n Please wait..", self)
  
          for specimen in list(self.Data.keys()):
              if 'pars' not in list(self.Data[specimen].keys()):
                  continue
              if 'specimen_int_uT' not in list(self.Data[specimen]['pars'].keys()):
                  continue
              tmin = self.Data[specimen]['pars']['measurement_step_min']
              tmax = self.Data[specimen]['pars']['measurement_step_max']
              pars = thellier_gui_lib.get_PI_parameters(
                  self.Data, self.acceptance_criteria, self.preferences, specimen, tmin, tmax, self.GUI_log, THERMAL, MICROWAVE)
              self.Data[specimen]['pars'] = pars
              self.Data[specimen]['pars']['lab_dc_field'] = self.Data[specimen]['lab_dc_field']
              self.Data[specimen]['pars']['er_specimen_name'] = self.Data[specimen]['er_specimen_name']
              self.Data[specimen]['pars']['er_sample_name'] = self.Data[specimen]['er_sample_name']
          del gframe