help > Extracting First Eigenvariate
Showing 1-3 of 3 posts
Sep 30, 2011 12:09 AM | benjamin sinclair
Extracting First Eigenvariate
Hello,
For ROI representative time series I wish to use the first principle component.
However, typing 1 into the box labelled 'dims' gives the mean time series, and I assume typing 2 will give the signal reconstructed from the first 2 principle components.
Is there a way to use just the first principle component?
Cheers
Ben
For ROI representative time series I wish to use the first principle component.
However, typing 1 into the box labelled 'dims' gives the mean time series, and I assume typing 2 will give the signal reconstructed from the first 2 principle components.
Is there a way to use just the first principle component?
Cheers
Ben
Sep 30, 2011 02:09 AM | Alfonso Nieto-Castanon - Boston University
RE: Extracting First Eigenvariate
Hi Benjamin,
First, just to clarify, you are right that currently when typing 1 that gives you the mean time series, when typing 2 or above that gives you instead several time series corresponding to a Principal Component Analysis of the BOLD signal within the ROI (the first component is still the same 'mean' time series as before, and the second and following orthogonal components are the series of principal components of the BOLD signal temporal covariance matrix). I assume, though, that what you want when referring to "just the first principle component' is to obtain what SPM refers to as the 'first eigenvariate' of the BOLD timeseries within an ROI (which corresponds to the first component from a SVD decomposition of the non-central second moment of the BOLD timeseries within the ROI). This 'first eigenvariate' is typically very similar to the 'mean' time series (the first component that the toolbox extracts), and similarly the second and following eigenvariates are typically very similar to the second and following components that the toolbox extracts, but there may be some differences particularly for large ROIs.
In any way, I added an option (a bit hidden though) in version 13.c that would allow you to extract the SPM-style SVD decomposition (where the first component is the 'first eigenvariate' timeseries) instead of the current PCA decomposition (where the first component is the 'mean' timeseries) from each ROI if you prefer to use that instead. To use this SVD-style decomposition simply load your project and type on the command line:
global CONN_x;
CONN_x.Setup.extractSVD=true;
conn save;
and then re-run the Setup and following steps. If you want to revert to the PCA-style decomposition, simply type:
global CONN_x;
CONN_x.Setup.extractSVD=false;
conn save;
and then re-run the Setup and following steps.
Let me know if everything works as expected. I will add this option to the gui and batch script options if other users find it useful as well.
Hope this helps!
First, just to clarify, you are right that currently when typing 1 that gives you the mean time series, when typing 2 or above that gives you instead several time series corresponding to a Principal Component Analysis of the BOLD signal within the ROI (the first component is still the same 'mean' time series as before, and the second and following orthogonal components are the series of principal components of the BOLD signal temporal covariance matrix). I assume, though, that what you want when referring to "just the first principle component' is to obtain what SPM refers to as the 'first eigenvariate' of the BOLD timeseries within an ROI (which corresponds to the first component from a SVD decomposition of the non-central second moment of the BOLD timeseries within the ROI). This 'first eigenvariate' is typically very similar to the 'mean' time series (the first component that the toolbox extracts), and similarly the second and following eigenvariates are typically very similar to the second and following components that the toolbox extracts, but there may be some differences particularly for large ROIs.
In any way, I added an option (a bit hidden though) in version 13.c that would allow you to extract the SPM-style SVD decomposition (where the first component is the 'first eigenvariate' timeseries) instead of the current PCA decomposition (where the first component is the 'mean' timeseries) from each ROI if you prefer to use that instead. To use this SVD-style decomposition simply load your project and type on the command line:
global CONN_x;
CONN_x.Setup.extractSVD=true;
conn save;
and then re-run the Setup and following steps. If you want to revert to the PCA-style decomposition, simply type:
global CONN_x;
CONN_x.Setup.extractSVD=false;
conn save;
and then re-run the Setup and following steps.
Let me know if everything works as expected. I will add this option to the gui and batch script options if other users find it useful as well.
Hope this helps!
Sep 30, 2011 08:09 AM | benjamin sinclair
RE: Extracting First Eigenvariate
Thanks for the reply,
I'll give it a go.
I'll give it a go.
