This function whitens functional data in terms of basis functions expansions.
Functional whitening procedures available:
PCA
: uses a projection that combines the covariance function eigenfactors and an arbitrary orthonormal basis
PCA-cor
: PCA whitening based on the correlation function
ZCA
: or Mahalanobis whitening, is a symmetric solution based on the spectral decomposition of the inverse square root of the covariance function
ZCA-cor
: Mahalanobis whitening based on the correlation function
Varimax
: combines the covariance function eigenfactors and its varimax rotation
Varimax-cor
: Varimax whitening based on the correlation function
Cholesky
: uses the Cholesky factorization of the inverse covariance function.
Which functional whitening procedure to use? PCA
and PCA-cor
allow for maximum compression of the functional observations and therefore the new data representations might be rather noisy. ZCA
and ZCA-cor
maximize the similarity with the original data, providing most robust whitening. The Varimax
/Varimax-cor
procedures, which are analogous to ZCA
/ZCA-cor
, can be used when the first component of the functional PCA accounts for a high percentage of the total variance. Cholesky
takes an intermediate position in scoring for maximum compression and similarity indices. To explore low dimensional structures in the data, kffobi
and pspline.kffobi
allows to compute these functional whitening representations using a few principal components.
For further details, see Vidal and Aguilera (2022).
whiten.fd(fdx, w = c("PCA", "PCA-cor","ZCA", "ZCA-cor",
"Varimax", "Varimax-cor", "Cholesky"),
pre.center = TRUE, post.center = FALSE)
a functional data object with whitened coefficients.
a functional data object obtained from the fda package.
the whitening procedure. By default ZCA
(Mahalanobis whitening) is used.
centering the functional observations before performing the transformation.
centering the functional observations after performing the transformation.
Marc Vidal, Ana Mª Aguilera
As in the whitening package (see Kessy et al. (2018)), to solve the sign ambiguity in PCA
, PCA-cor
we use eigenvector matrices with a positive diagonal. The pre.centrer
/post.centrer
options can be used interchangeably.
Acal, C., A.M. Aguilera and M. Escabias (2020). New Modeling Approaches Based on Varimax Rotation of Functional Principal Components. Mathematics, 8(11), 1-15. <doi:10.3390/math8112085>
Kessy, A., A. Lewin and K. Strimmer (2018). Optimal Whitening and Decorrelation. The American Statistician, 72(4), 309-314, <doi:10.1080/00031305.2016.1277159>.
Vidal, M. and and A.M. Aguilera (2022). Novel whitening approaches in functional settings. Stat, e516, <doi:10.1002/sta4.516>.
ffobi
## Canadian Weather data
library(fda)
arg <- 1:365
Temp <- CanadianWeather$dailyAv[,,1]
B <- create.bspline.basis(rangeval=c(min(arg),max(arg)), nbasis=16)
x <- Data2fd(Temp, argvals = arg, B)
wx <- whiten.fd(x)
Run the code above in your browser using DataLab