coef.dfrr {dfrr} | R Documentation |
Get estimated coefficients from a dfrr fit
Description
Returns estimations of the smooth functional regression coefficients \beta(t)
.
The result is a matrix of either Fourier coefficients or evaluations. See Details.
Usage
## S3 method for class 'dfrr'
coef(
object,
standardized = NULL,
unstandardized = !standardized,
return.fourier.coefs = NULL,
return.evaluations = !return.fourier.coefs,
time_to_evaluate = NULL,
...
)
Arguments
object |
a |
standardized , unstandardized |
a |
return.fourier.coefs , return.evaluations |
a |
time_to_evaluate |
a numeric vector indicating the set of time points for evaluating the functional regression coefficients, for the case of |
... |
dot argument, just for consistency with the generic function |
Details
This function will return either the Fourier coefficients or the evaluation of
estimated coefficients. Fourier coefficients which are reported are
based on the a set of basis which can be determined by basis(dfrr_fit)
.
Thus the evaluation of regression coefficients on the set of time points specified by vector time
,
equals to fitted(dfrr_fit)%*%t(eval.basis(time,basis(dfrr_fit)))
.
Consider that the unstandardized estimations are not identifiable. So, it is recommended to extract and report the standardized estimations.
Value
This function returns a matrix
of dimension NxM or NxJ, depending
the argument 'return.evaluations'. If return.evaluations=FALSE
,
the returned matrix is NxJ, where N denotes the number of functional regression coefficients, (the number of rows of the argument 'newData'),
and J denotes the number of basis functions. Then, the NxJ matrix is
the fourier coefficients of functional regression coefficients.
If return.evaluations=TRUE
,
the returned matrix is NxM, where M is the length of the argument time_to_evaluate
.
Then, the NxM matrix is the functional regression coefficients
evaluated at time points given in time_to_evaluate
.
See Also
Examples
set.seed(2000)
N<-50;M<-24
X<-rnorm(N,mean=0)
time<-seq(0,1,length.out=M)
Y<-simulate_simple_dfrr(beta0=function(t){cos(pi*t+pi)},
beta1=function(t){2*t},
X=X,time=time)
#The argument T_E indicates the number of EM algorithm.
#T_E is set to 1 for the demonstration purpose only.
#Remove this argument for the purpose of converging the EM algorithm.
dfrr_fit<-dfrr(Y~X,yind=time,T_E=1)
coefs<-coef(dfrr_fit)
plot(coefs)