| classif.ML {fda.usc} | R Documentation |
Functional classification using ML algotithms
Description
Computes functional classification using functional (and non functional) explanatory variables by rpart, nnet, svm or random forest model
Usage
classif.nnet(formula, data, basis.x = NULL, weights = "equal", size, ...)
classif.rpart(
formula,
data,
basis.x = NULL,
weights = "equal",
type = "1vsall",
...
)
classif.svm(
formula,
data,
basis.x = NULL,
weights = "equal",
type = "1vsall",
...
)
classif.ksvm(formula, data, basis.x = NULL, weights = "equal", ...)
classif.randomForest(
formula,
data,
basis.x = NULL,
weights = "equal",
type = "1vsall",
...
)
classif.lda(
formula,
data,
basis.x = NULL,
weights = "equal",
type = "1vsall",
...
)
classif.qda(
formula,
data,
basis.x = NULL,
weights = "equal",
type = "1vsall",
...
)
classif.naiveBayes(formula, data, basis.x = NULL, laplace = 0, ...)
classif.cv.glmnet(formula, data, basis.x = NULL, weights = "equal", ...)
classif.gbm(formula, data, basis.x = NULL, weights = "equal", ...)
Arguments
formula |
an object of class |
data |
List that containing the variables in the model. |
basis.x |
List of basis for functional explanatory data estimation. |
weights |
Weights:
|
size |
number of units in the hidden layer. Can be zero if there are skip-layer units. |
... |
Further arguments passed to or from other methods. |
type |
If type is |
laplace |
value used for Laplace smoothing (additive smoothing). Defaults to 0 (no Laplace smoothing). |
Details
The first item in the data list is called "df" and is a data
frame with the response and non functional explanatory variables, as
glm.
Functional covariates of class fdata or fd are introduced in
the following items in the data list.
basis.x is a list of
basis for represent each functional covariate. The b object can be
created by the function: create.pc.basis, pca.fd
create.pc.basis, create.fdata.basis o
create.basis.
basis.b is a list of basis for
represent each functional beta parameter. If basis.x is a list of
functional principal components basis (see create.pc.basis or
pca.fd) the argument basis.b is ignored.
Value
Return classif object plus:
-
formulaformula. -
dataList that containing the variables in the model. -
groupFactor of length n -
group.estEstimated vector groups -
prob.classificationProbability of correct classification by group. -
prob.groupMatrix of predicted class probabilities. For each functional point shows the probability of each possible group membership. -
max.probHighest probability of correct classification. -
typeType of classification scheme: 1 vs all or majority voting. -
fitlist of binary classification fitted models.
Note
Wrapper versions for multivariate and functional classification:
-
classif.lda,classif.qda: usesldaandqdafunctions and requiresMASSpackage. -
classif.nnet: usesnnetfunction and requiresnnetpackage. -
classif.rpart: usesnnetfunction and requiresrpartpackage. -
classif.svm,classif.naiveBayes: usessvmandnaiveBayesfunctions and requirese1071package. -
classif.ksvm: usesweighted.ksvmfunction and requirespersonalizedpackage. -
classif.randomForest: usesrandomForestfunction and requiresrandomForestpackage. -
classif.cv.glmnet: usescv.glmnetfunction and requiresglmnetpackage. -
classif.gbm: usesgbmfunction and requiresgbmpackage.
Author(s)
Febrero-Bande, M. and Oviedo de la Fuente, M.
References
Ramsay, James O., and Silverman, Bernard W. (2006), Functional Data Analysis, 2nd ed., Springer, New York.
McCullagh and Nelder (1989), Generalized Linear Models 2nd ed. Chapman and Hall.
Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S, New York: Springer. Regression for R. R News 1(2):20-25
See Also
See Also as: rpart.
Alternative method:
classif.np, classif.glm,
classif.gsam and classif.gkam.
Examples
## Not run:
data(phoneme)
mlearn<-phoneme[["learn"]]
glearn<-phoneme[["classlearn"]]
mtest<-phoneme[["test"]]
gtest<-phoneme[["classtest"]]
dataf<-data.frame(glearn)
dat=ldata("df"=dataf,"x"=mlearn)
a1<-classif.rpart(glearn~x,data=dat)
a2<-classif.nnet(glearn~x,data=dat)
a3<-classif.gbm(glearn~x,data=dat)
a4<-classif.randomForest(glearn~x,data=dat)
a5<-classif.cv.glmnet(glearn~x,data=dat)
newdat<-list("x"=mtest)
p1<-predict(a1,newdat,type="class")
p2<-predict(a2,newdat,type="class")
p3<-predict(a3,newdat,type="class")
p4<-predict(a4,newdat,type="class")
p5<-predict(a5,newdat,type="class")
mean(p1==gtest);mean(p2==gtest);mean(p3==gtest)
mean(p4==gtest);mean(p5==gtest)
## End(Not run)