hmrR_PCAFilter - BUNPC/Homer3 GitHub Wiki
UI Name :
PCA_Filter
Syntax :
[data_yc, svs, nSV] = hmrR_PCAFilter( data_y, mlAct, tInc, nSV )
Description :
Perform a PCA filter on the data matrix y.
Inputs :
- data_y: SNIRF object containing data matrix where rows are time points. If y is wavelength data, then the columns are channels as described in ml. If y is concentration data, then the third dimension is channels and the second dimension indicates HbO and HbR.
- mlAct:
- tInc: This is a vector of length number of time points and is 1 to indicate that a time point is included in the analysis and 0 if it is to be excluded. This is useful for ignoring periods of time with strong artifacts.
- nSV: This is the number of principal components to remove filter from the data. This can be an integer to indicate the number of components to remove. Or it can be a fraction less than 1 to indicate that enough components should be removed to remove up to that fraction of the variance in the data. If nSV is a single number it is applied to all channels of data. This is useful for filtering motion artifacts. If it is 2 or more numbers, then it is applied to each wavelength or concentration separately using the corresponding number.
Outputs :
- data_yc: SNIRF object containing the filtered data matrix.
- svs: Cell array for each data block with the singular value spectrum from the PCA.
- nSV: Cell array for each data block with the number of components filtered from the data.
Usage Options :
- PCA_Filter_Delta_OD: [dod, svs, nSV] = hmrR_PCAFilter( dod, mlActAuto, tIncAuto, nSV)
- PCA_Filter_Concentration_Data: [dc, svs, nSV] = hmrR_PCAFilter( dc, mlActAuto, tIncAuto, nSV)
Default Parameters :
- nSV: 0.00
Prerequisites :
- For the PCA_Filter_Concentration_Data Usage Option
- Delta_OD_to_Conc: dc = hmrR_OD2Conc( dod, probe, ppf )
- For the PCA_Filter_Delta_OD Usage Option
- Intensity_to_Delta_OD: dod = hmrR_Intensity2OD( intensity )