Rectification of the Bias in the Wavelet Power Spectrum


(top) The artificial time series comprising of five sine waves, with a unit amplitude and five different periods (1, 8, 32, 128, and 365 days). Also shown are the (middle) original and (bottom) rectified wavelet power spectra (left column) and time-averaged wavelet power spectra (right column) of the artificial time series. Red and blue indicate high and low wavelet power spectrum values (in base 2 logarithm), respectively.

(This is Figure 2 of Liu et al. [2007])

References:

  • Torrence, C., and G.P. Compo, 1998: A practical guide to wavelet analysis. Bulletin of American Meteorological Society, 79, 61-78.

Why & How to Rectify the Bias in the Wavelet Power Spectrum?

For a time series comprised of sine waves with the same amplitude but different frequencies the widely adopted wavelet method [e.g., Torrence and Compo, 1998] does not produce a spectrum with identical peaks (see the middle panels of the figure to the left, and the FAQs of the wavelet toolbox provided by C. Torrence and G.P. Compo), in contrast to a Fourier analysis.  This wavelet spectrum bias problem is addressed in Liu et al. [2007].  It is demonstrated that a physically consistent definition of energy for the wavelet power spectrum should be the transform coefficient squared divided by the scale it associates. Thus, rectification of the bias is proposed, i.e., the wavelet power spectrum should be divided by its scales.

Such adjusted wavelet power spectrum results in a substantial improvement in the spectral estimate (see the bottom panels of the figure to the left), allowing for a comparison of the spectral peaks across the scales/frequencies/periods. This rectification is validated with an artificial time series and a real coastal sea level record at St. Petersburg, Florida. 

Also examined is the previous example of the wavelet analysis of the Niño-3 SST data.  Compared to the original wavelet spectrum, there is a slight adjustment of the relative magnitude of the wavelet spectrum across the frequency domain in the rectified spectrum: the high-frequency spectrum values are decreased, and the low-frequency spectrum values are increased relatively. The adjusted wavelet spectrum overlays better with the 95% significance contours. Changes are also found in the time-averaged wavelet spectrum shapes; that is, the spectral line becomes smoother. However, the major peak is still located between the 2- and 8-yr periods. That is, the main conclusion on the Niño-3 SST wavelet analysis in Torrence and Compo [1998] is not affected. That may be the main reason why the bias problem had been overlooked for so long time!

For details, see Liu et al. [2007].

How to implement the bias rectification in wavelet analysis software?

  • For MATLAB users, here is an example (m-code) using the Niño-3 SST data. This code directly generates Figure 4 of Liu et al. [2007].
  • For NCL (NCAR Commond Language) users, there is a note in NCL wavelet function webpage: The bias rectification can be obtained [courtesy of Dr. Eros Albertazzi (CMCC, Italy)] using the returned attributes of the wavelet function:

power_no_bias = wave@power/conform(power,wave@scale,0)

gws_no_bias = wave@gws/wave@scale

  • For R users, there is a biwavelet R package by Drs. Tarik C. Gouhier and Aslak Grinsted. It is also available from the R Graphic Manual in a mirrior site based in Japan.
  • For Python users, there is a kPyWavelet module in the GitHub contributed by Dr. Stuart Mumford in the United Kingdom.

View citations of this work in Google Scholar.


See Yonggang Liu's publications

Back to Yonggang Liu's homepage

(Last updated on 11/8/2014)












eXTReMe Tracker