fda.usc (version 1.5.0)

fregre.np: Functional regression with scalar response using non-parametric kernel estimation

Description

Computes functional regression between functional explanatory variables and scalar response using kernel estimation. The non-parametric functional regression model can be written as follows $$y_i =r(X_i)+\epsilon_i$$ where the unknown smooth real function \(r\) is estimated using kernel estimation by means of $$\hat{r}(X)=\frac{\sum_{i=1}^{n}{K(h^{-1}d(X,X_{i}))y_{i}}}{\sum_{i=1}^{n}{K(h^{-1}d(X,X_{i}))}}$$ where \(K\) is an kernel function (see Ker argument), h is the smoothing parameter and \(d\) is a metric or a semi-metric (see metric argument).

Usage

fregre.np(fdataobj,y,h=NULL,Ker=AKer.norm,metric=metric.lp,
type.S=S.NW,par.S=list(w=1),...)

Arguments

fdataobj

fdata class object.

y

Scalar response with length n.

h

Bandwidth, h>0. Default argument values are provided as the 5%--quantile of the distance between fdataobj curves, see h.default.

Ker

Type of asymmetric kernel used, by default asymmetric normal kernel.

metric

Metric function, by default metric.lp.

type.S

Type of smothing matrix S. By default S is calculated by Nadaraya-Watson kernel estimator (S.NW).

par.S

List of parameters for type.S: w, the weights.

Arguments to be passed for metric.lp o other metric function.

Value

Return:

call

The matched call.

fitted.values

Estimated scalar response.

H

Hat matrix.

residuals

y minus fitted values.

df

The residual degrees of freedom.

r2

Coefficient of determination.

sr2

Residual variance.

y

Response.

fdataobj

Functional explanatory data.

mdist

Distance matrix between x and newx.

Ker

Asymmetric kernel used.

h.opt

smoothing parameter or bandwidth.

Details

The distance between curves is calculated using the metric.lp although any other semimetric could be used (see semimetric.basis or semimetric.NPFDA functions). The kernel is applied to a metric or semi-metrics that provides non-negative values, so it is common to use asymmetric kernels. Different asymmetric kernels can be used, see Kernel.asymmetric.

References

Ferraty, F. and Vieu, P. (2006). Nonparametric functional data analysis. Springer Series in Statistics, New York.

Febrero-Bande, M., Oviedo de la Fuente, M. (2012). Statistical Computing in Functional Data Analysis: The R Package fda.usc. Journal of Statistical Software, 51(4), 1-28. http://www.jstatsoft.org/v51/i04/

Hardle, W. Applied Nonparametric Regression. Cambridge University Press, 1994.

See Also

See Also as: fregre.np.cv, summary.fregre.fd and predict.fregre.fd . Alternative method: fregre.basis,cand fregre.pc.

Examples

Run this code
# NOT RUN {
# }
# NOT RUN {
data(tecator)
absorp=tecator$absorp.fdata
ind=1:129
x=absorp[ind,]
y=tecator$y$Fat[ind]

res.np=fregre.np(x,y,Ker=AKer.epa)
summary.fregre.fd(res.np)
res.np2=fregre.np(x,y,Ker=AKer.tri)
summary.fregre.fd(res.np2)

# with other semimetrics.
res.pca1=fregre.np(x,y,Ker=AKer.tri,metri=semimetric.pca,q=1)
summary.fregre.fd(res.pca1)
res.deriv=fregre.np(x,y,metri=semimetric.deriv)
summary.fregre.fd(res.deriv)
x.d2=fdata.deriv(x,nderiv=1,method="fmm",class.out='fdata')
res.deriv2=fregre.np(x.d2,y)
summary.fregre.fd(res.deriv2)
x.d3=fdata.deriv(x,nderiv=1,method="bspline",class.out='fdata')
res.deriv3=fregre.np(x.d3,y)
summary.fregre.fd(res.deriv3)
# }

Run the code above in your browser using DataCamp Workspace