code: def resample_signal(self, data_frame):
          
          new_freq = np.round(1 / self.sampling_frequency, decimals=6)
          df_resampled = data_frame.resample(str(new_freq) + 'S').mean()
  
          # f = interpolate.interp1d(data_frame.td, data_frame.mag_sum_acc)
          
          # new_timestamp = np.arange(data_frame.td[0], data_frame.td[-1], 1.0 / self.sampling_frequency)
          # df_resampled.mag_sum_acc = f(new_timestamp)
          
          logging.debug("resample signal")
          df_resampled = df_resampled.interpolate(method='linear')
          get_sampling_rate_from_timestamp(df_resampled)
          
          # df_resampled['td'] = df_resampled.index - df_resampled.index[0]
          
          return df_resampled
docs: Convenience method for frequency conversion and resampling of data frame. 
              Object must have a DatetimeIndex. After re-sampling, this methods interpolate the time magnitude sum 
              acceleration values and the x,y,z values of the data frame acceleration
  
              :param data_frame: the data frame to resample
              :param str sampling_frequency: the sampling frequency. Default is 100Hz, as recommended by the author of the pilot study [1]