As an alternative to z-transformation of data, applying the per cent signal change (PSC) transformation has two advantages: the signal amplitude is not altered based on variance, which means that data containing additional noise will not undergo additional scaling (unless the noise has a strong bias on the mean, that is). Additionally, data that has been PSC transformed will yield (close to) per cent signal change beta values as result of the regression equation (given that the HRF convolution has been applied in a way that ensures that the hypothesized amplitude of a prolonged and continuous stimulation is modeled as 1
).
psctrans - perform PSC transformation on time course FORMAT: [psctc, pscf] = psctrans(tc [, dim [, tp]]) Input fields: tc time course data dim temporal dimension (default: first non-singleton) tp time points (indices of dim to use for normalization) Output fields: psctc PSC transformed time course pscf PSC transformation factor See also ztrans
The new values are computes as (100 ./ mean(T)) .* T
, whereas the mean is only estimated over the selected timepoints (e.g. without known to be noise).
ptc = psctrans(tc);
pvd = psctrans(vtc.VTCData);
For further examples, also check out the ztrans documentation; the options work in the same way.