# \donttest{
n <- 100 ### sample size
N <- 100
num.ages <- 20 ### dimension 2
num.years <- 15 ### dimension 1
dense_grid <- seq(0,1,length=N)
Lt <- list()
Ly <- list()
Lt <- lapply(1:n, function(i) dense_grid)
Ly <- lapply(Lt, function(grid) {
y_temp <- matrix(0, num.ages, num.years)
lapply(1:num.ages, function(s) {
lapply(1:num.years, function(t) {
y_temp[s, t] <<- y_temp[s, t] + cos(grid[t]) + rnorm(1, 0, 0.5)
})
})
y_temp
})
X.age.year <- matrix(0,n,num.years*num.ages)
lapply(1:n, function(i) {
X.age.year[i,] <<- as.vector(Ly[[i]])
})
res <- DenseMarginalFPCA(X.age.year, n, 15, 20,
fpca.op1=NULL, fpca.op2=NULL, pc.j = NULL, pc.k = NULL)
# Basic output
res$Xest
res$mu
res$pc.j
res$pc.k
res$scores
res$res.psi
res$psi
res$FVE
res$VarOrdered
#Additional scores
fpca_psi <- res$res.psi
xi_i_j <- fpca_psi$xiEst
str(fpca_psi$xiEst)
#xi scores for 1st individual
xi_i_j[1:num.years,]
#xi scores for 2nd individual
xi_i_j[(num.years+1):(2*num.years),]
# }
Run the code above in your browser using DataLab