FECconditional: This function computes the next FEC conditional on previous...

Description Usage Arguments Examples

Description

This function computes the next FEC conditional on previous fitted FEC using the SOAP method

Usage

1
2
FECconditional(ylist, tlist, beta_previous, spline_basis, threshold = 1e-04,
  gamma = 0)

Arguments

ylist

a list of observed longtitudinal data; each element in the list is a numeric vector for one subject's observed data

tlist

a list of observed time points

beta_previous

a list of previously estimated FECs' coefficients

spline_basis

the B-spline basis for the fitted FEC

gamma

a positive number, the smoothing parameter

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
## Not run: 

library(fda)
data(simulate_data)
observed = simulate_data$observed
timepoints =simulate_data$timepoints
spline.basis=create.bspline.basis(rangeval=c(0,364),nbasis=15,norder=4)
beta0 = rep(observed%>%do.call(c,.)%>%mean,spline.basis$nbasis)
FEC1  = firstFEC(ylist=observed, tlist=timepoints,spline_basis=spline.basis, gamma=1e6,threshold=1e-5)
previous_beta = list()
previous_beta[[1]] = FEC1$beta
FEC2 = FECconditional(ylist=observed, tlist=timepoints,beta_previous=previous_beta,spline_basis=spline.basis, gamma=1e6,threshold=1e-5)
previous_beta[[2]] = FEC2$beta
FEC3 = FECconditional(ylist=observed, tlist=timepoints,beta_previous=previous_beta,spline_basis=spline.basis, gamma=1e6,threshold=1e-5)
previous_beta[[3]] = FEC3$beta

betas = do.call(cbind, previous_beta)
colnames(betas)  =c("FEC1","FEC2","FEC3")
fecs = fd(betas, spline.basis)

library(ggplot2)
fdagg(fecs)

predict_y = predict_SOAP(previous_beta,ylist=observed, tlist=timepoints, spline_basis=spline.basis,nminus=2)

i=6
plot(predict_y$predict[i],ylim=range(observed[[i]]))
lines(simulate_data$yfds[i])
points(x=timepoints[[i]],y=observed[[i]])

## End(Not run)

YunlongNie/fSOAP documentation built on May 12, 2019, 6:19 p.m.