Clear Filters
Clear Filters

Selecting level in Wavelet Multiscale Principal Components Analysis

2 views (last 30 days)
I have a time series of neurotransmitter levels in the brain. I'd like to explore the contribution to the signal at different frequencies, and I've stumbles over the wmspca() function in the guide from
I deconstruct the signal using modwt and input the individual levels as the multivariate signal. However, wmspca prompts me for a level, but I'm unsure what the given level represents in the wmspca function and how it impacts the result. I'm familiar with levels in wavelet analysis, and so far I've been extracting frequency ranges manually, but now I'd like to explore the PCAs of the signal.

Answers (1)

Rajani Mishra
Rajani Mishra on 31 Jul 2020
LEVEL input argument accounts for number of detail coefficients in decomposition step. If “LEVEL” argument is not passed, then “DEC” is passed. Where “DEC” is output of mdwtdec which contains detail and approximate coefficients. wmspca works level wise on a signal.
Signal has level wise coefficients (suppose level is 5 then it has 5 detail coefficients (matrix) and 1 approximate coefficient (matrix) ). On passing signal and level wmspca calculates coefficients (this process is called as decomposition).
  1 Comment
Megha S Kumar
Megha S Kumar on 19 Dec 2020
Hi, i am trying to implement wmspca inbuilt function step by step and compare it with eigen vectors in Wavelet Analyzer app also. when i input a 1024 x 4 signal matrix and apply 5 level dwt on each column. If i choose 1 principal component how can i reconstruct using inverse dwt as wavelet coefficients length and eigen vector lengths are totally different?.
Step after application of pca to each scale is confusing me. i am working around this for the past few weeks.
Any help is appreciated. Thanks in advance.

Sign in to comment.




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!