cca.fd: Functional Canonical Correlation Analysis

Description Usage Arguments Value See Also Examples

View source: R/cca.fd.R

Description

Carry out a functional canonical correlation analysis with regularization or roughness penalties on the estimated canonical variables.

Usage

1
2
3
cca.fd(fdobj1, fdobj2=fdobj1, ncan = 2,
       ccafdPar1=fdPar(basisobj1, 2, 1e-10),
       ccafdPar2=ccafdPar1, centerfns=TRUE)

Arguments

fdobj1

a functional data object.

fdobj2

a functional data object. By default this is fdobj1 , in which case the first argument must be a bivariate funnctional data object.

ncan

the number of canonical variables and weight functions to be computed. The default is 2.

ccafdPar1

a functional parameter object defining the first set of canonical weight functions. The object may contain specifications for a roughness penalty. The default is defined using the same basis as that used for fdobj1 with a slight penalty on its second derivative.

ccafdPar2

a functional parameter object defining the second set of canonical weight functions. The object may contain specifications for a roughness penalty. The default is ccafdParobj1 .

centerfns

if TRUE, the functions are centered prior to analysis. This is the default.

Value

an object of class cca.fd with the 5 slots:

ccwtfd1

a functional data object for the first canonical variate weight function

ccwtfd2

a functional data object for the second canonical variate weight function

cancorr

a vector of canonical correlations

ccavar1

a matrix of scores on the first canonical variable.

ccavar2

a matrix of scores on the second canonical variable.

See Also

plot.cca.fd, varmx.cca.fd, pca.fd

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
#  Canonical correlation analysis of knee-hip curves

gaittime  <- (1:20)/21
gaitrange <- c(0,1)
gaitbasis <- create.fourier.basis(gaitrange,21)
lambda    <- 10^(-11.5)
harmaccelLfd <- vec2Lfd(c(0, 0, (2*pi)^2, 0))

gaitfdPar <- fdPar(gaitbasis, harmaccelLfd, lambda)
gaitfd <- smooth.basis(gaittime, gait, gaitfdPar)$fd

ccafdPar <- fdPar(gaitfd, harmaccelLfd, 1e-8)
ccafd0    <- cca.fd(gaitfd[,1], gaitfd[,2], ncan=3, ccafdPar, ccafdPar)
#  display the canonical correlations
round(ccafd0$ccacorr[1:6],3)
#  compute a VARIMAX rotation of the canonical variables
ccafd <- varmx.cca.fd(ccafd0)
#  plot the canonical weight functions
plot.cca.fd(ccafd)

Example output

Loading required package: splines
Loading required package: Matrix

Attaching package: 'fda'

The following object is masked from 'package:graphics':

    matplot

[1] 0.888 0.778 0.377 0.219 0.132 0.003

fda documentation built on May 2, 2019, 5:12 p.m.