code: def amplitude_by_fft(self, data_frame):
          
          signal_length = len(data_frame.filtered_signal)
          normalised_transformed_signal = data_frame.transformed_signal.values / signal_length
  
          k = np.arange(signal_length)
          T = signal_length / self.sampling_frequency
          f = k / T  # two sides frequency range
  
          f = f[range(int(signal_length / 2))]  # one side frequency range
          ts = normalised_transformed_signal[range(int(signal_length / 2))]
          ampl = sum(abs(ts[(f > self.lower_frequency) & (f < self.upper_frequency)]))
          freq = f[abs(ts).argmax(axis=0)]
  
          logging.debug("tremor ampl calculated")
  
          return ampl, freq
docs: This methods extract the fft components and sum the ones from lower to upper freq as per \
              :cite:`Kassavetis2015`
  
              :param data_frame: the data frame
              :type data_frame: pandas.DataFrame
              :return ampl: the ampl
              :rtype ampl: float
              :return freq: the freq
              :rtype freq: float