Power Spectrum/Power Spectral Density, Units, frequency bands

Dear EEG community,

after working through most of ANTS (your book is great Mike! It helped me a lot!!!), I still have a few points that are unclear to me or are described or explained differently in other literature.
My problem(s)/question(s) refers to the Power Spectrum or Power Spectral Density and its units and the calculation of the power of frequency bands.

First to the Power Spectrum / Power Spectral Density. Is there a difference between the Power Spectrum and the Power Spectral Density? Or are they simply two terms used synonymously? I have the feeling that the terms are often mixed up in the literature.

To describe my further problems/questions about the units and the calculation of the power of frequency bands, I would like to present an example.

I have a resting state EEG recording of 120s with a srate of 1024Hz and a total of 19 electrodes (data points per electrode = 122.880 in µV).
I am interested in the question how high the power in the theta-band (3.5 - 7.5Hz) is.

My steps (I think they are the same steps that EEGlab does) that I did with MATLAB:

  1. Preprocessing (filter, …, ICA, …, and so on) to get clean data
  2. Separate the data (19, 122.880) into consecutive epochs of 2s with 75% overlap. → my data has now 3 dimensions (19, 2048, nb_of_epochs)
  3. after that I applied matlabs detrend() function to the epochs to remove polynomial trend
  4. after that I applied the hamming window (length: 2048) to the epochs.
  5. then I calculated the fft: data_fft = fft(data, [], 2) which is of course complex valued and still has the dimensions (19,2048,nb_of_epochs)

Is it correct that the units of the Fourier coefficients of data_fft (and data_fft represents the amplitude spectrum) are µV/√Hz Or is it just µV?

  1. then I calculated the power: data_power = data_fft.*conj(data_fft) and after that I averaged data_power across the epochs. Then I have data_power(19, 2048) which is real valued and which has 2 dimensions.

Is this now the so called Power Spectral Density? What are the units now? Is it µV^2/Hz or just µV^2?

  1. My initial question was how high the power is in the theta-band (3.5-7.5Hz). For this I averaged the power values of data_power, which are in the range of 3.5-7.5Hz (EEGlab does the same).

Is this now the so called Power Spectrum? The units should not have changed, because I only took the average. I have read that another possibility is to calculate the integral under the area of 3.5-7.5Hz in the Power Spectrum/Power Spectral Density. What is the difference between the two methods? How do I interpret the results?

At this point I would like to mention that I have not (yet) applied the two scaling options (Divide coefficients by N, double positive coefficients). As I have understood, EEGlab does not do that either and just takes the decibel conversion (10*log10(data_power)). I left out the dB conversion in my example.

Sorry for the long text and the many questions :slight_smile: I would be happy if some of them could be answered.

Thanks in advance!


Hi Niko. Good question, and this is a source of common confusion, because power spectrum and power spectral density are often used interchangeably. They are kindof similar. Technically, a power spectral density is for continuous signals over an infinite amount of time, whereas a power spectrum is for discrete signals over finite time. You can think of this as the difference between integrals and summations. Or if you are statistically inclined, you can think of this as the difference between a probability density function vs. a probability mass function.

So for EEG signals, it’s not really technically possible to compute an actual PSD (unless you are simulating data and know the limit behavior). However, you can estimate a PSD by scaling the power spectrum by the frequency resolution. This 1/Hz factor is basically acting as the “dx” in an integral signal, when computing an area. Relatedly, with a true PSD, you cannot actually compute the power at a specific frequency; you can only compute the area of the spectrum over some range.

But that’s rather theoretical in my opinion. In practice, it doesn’t really matter as long as you use the same procedure for all of your conditions/electrodes/subjects. Then any arbitrary scaling factors are constant and thus will not introduce any systematic biases.

So the answer to your question is that you are computing the power spectrum, and the units would be uV^2 (if you were to apply the appropriate normalizations to the power values). You could convert this to an estimate of the PSD by dividing by dx (Hz) if you like. The important thing is that none of these factors will affect the shape of the spectrum. Nonlinear transformations like log10 or amplitude-vs-power will affect the shape, though, so it’s important to apply everything consistently.

Hope that helps!

1 Like

Hi Mike,

Thank you for your detailed answer and explanation! The mixing of power spectrum and power spectrum density has always confused me… but now i’ve got it!