This function implements Partial least squares beta regression models on complete or incomplete datasets (formula specification of the model).
PLS_beta_formula( formula, data = NULL, nt = 2, limQ2set = 0.0975, dataPredictY = dataX, modele = "pls", family = NULL, typeVC = "none", EstimXNA = FALSE, scaleX = TRUE, scaleY = NULL, pvals.expli = FALSE, alpha.pvals.expli = 0.05, MClassed = FALSE, tol_Xi = 10^(-12), weights, subset, start = NULL, etastart, mustart, offset, method, control = list(), contrasts = NULL, sparse = FALSE, sparseStop = TRUE, naive = FALSE, link = NULL, link.phi = NULL, type = "ML", verbose = TRUE )
formula | an object of class " |
---|---|
data | an optional data frame, list or environment (or object coercible
by |
nt | number of components to be extracted |
limQ2set | limit value for the Q2 |
dataPredictY | predictor(s) (testing) dataset |
modele | name of the PLS glm or PLS beta model to be fitted
( |
family | a description of the error distribution and link function to
be used in the model. This can be a character string naming a family
function, a family function or the result of a call to a family function.
(See |
typeVC | type of leave one out cross validation. For back compatibility purpose.
|
EstimXNA | only for |
scaleX | scale the predictor(s) : must be set to TRUE for
|
scaleY | scale the response : Yes/No. Ignored since not always possible for glm responses. |
pvals.expli | should individual p-values be reported to tune model selection ? |
alpha.pvals.expli | level of significance for predictors when pvals.expli=TRUE |
MClassed | number of missclassified cases, should only be used for binary responses |
tol_Xi | minimal value for Norm2(Xi) and \(\mathrm{det}(pp' \times
pp)\) if there is any missing value in the |
weights | an optional vector of 'prior weights' to be used in the
fitting process. Should be |
subset | an optional vector specifying a subset of observations to be used in the fitting process. |
start | starting values for the parameters in the linear predictor. |
etastart | starting values for the linear predictor. |
mustart | starting values for the vector of means. |
offset | this can be used to specify an a priori known component
to be included in the linear predictor during fitting. This should be
|
method |
|
control | a list of parameters for controlling the fitting process. For
|
contrasts | an optional list. See the |
sparse | should the coefficients of non-significant predictors
(< |
sparseStop | should component extraction stop when no significant
predictors (< |
naive | Use the naive estimates for the Degrees of Freedom in plsR?
Default is |
link | character specification of the link function in the mean model
(mu). Currently, " |
link.phi | character specification of the link function in the
precision model (phi). Currently, " |
type | character specification of the type of estimator. Currently,
maximum likelihood (" |
verbose | should info messages be displayed ? |
Depends on the model that was used to fit the model.
There are seven different predefined models with predefined link functions available :
ordinary pls models
glm gaussian with inverse link pls models
glm gaussian with identity link pls models
glm binomial with square inverse link pls models
glm binomial with logit link pls models
glm poisson with log link pls models
glm polr with logit link pls models
Using the "family="
option and setting
"modele=pls-glm-family"
allows changing the family and link function
the same way as for the glm
function. As a consequence
user-specified families can also be used.
accepts
the links (as names) identity
, log
and
inverse
.
accepts the links (as names)
identity
, log
and inverse
.
accepts the
links (as names) identity
, log
and inverse
.
accepts the links logit
, probit
, cauchit
,
(corresponding to logistic, normal and Cauchy CDFs respectively) log
and cloglog
(complementary log-log).
accepts
the links logit
, probit
, cauchit
, (corresponding to
logistic, normal and Cauchy CDFs respectively) log
and cloglog
(complementary log-log).
accepts the links logit
,
probit
, cauchit
, (corresponding to logistic, normal and Cauchy
CDFs respectively) log
and cloglog
(complementary log-log).
accepts the links inverse
, identity
and
log
.
accepts the links inverse
,
identity
and log
.
accepts the links
inverse
, identity
and log
.
accepts the
links log
, identity
, and
sqrt
.
accepts the links log
,
identity
, and sqrt
.
accepts the links
log
, identity
, and sqrt
.
accepts the links
1/mu^2
, inverse
, identity
and
log
.
accepts the links 1/mu^2
,
inverse
, identity
and log
.
accepts the
links 1/mu^2
, inverse
, identity
and log
.
accepts the links logit
, probit
, cloglog
,
identity
, inverse
, log
, 1/mu^2
and
sqrt
.
accepts the links logit
,
probit
, cloglog
, identity
, inverse
, log
,
1/mu^2
and sqrt
.
accepts the links
logit
, probit
, cloglog
, identity
,
inverse
, log
, 1/mu^2
and sqrt
.
can be used to create a power link function.
can be used to create a power link function.
A typical predictor has the form response ~ terms where response is the (numeric) response vector and terms is a series of terms which specifies a linear predictor for response. A terms specification of the form first + second indicates all the terms in first together with all the terms in second with any duplicates removed.
A specification of the form first:second indicates the the set of terms obtained by taking the interactions of all terms in first with all terms in second. The specification first*second indicates the cross of first and second. This is the same as first + second + first:second.
The terms in the formula will be re-ordered so that main effects come first, followed by the interactions, all second-order, all third-order and so on: to avoid this pass a terms object as the formula.
Non-NULL weights can be used to indicate that different observations have different dispersions (with the values in weights being inversely proportional to the dispersions); or equivalently, when the elements of weights are positive integers w_i, that each response y_i is the mean of w_i unit-weight observations.
The default estimator for Degrees of Freedom is the Kramer and Sugiyama's one which only works for classical plsR models. For these models, Information criteria are computed accordingly to these estimations. Naive Degrees of Freedom and Information Criteria are also provided for comparison purposes. For more details, see Kraemer, N., Sugiyama M. (2010). "The Degrees of Freedom of Partial Least Squares Regression". preprint, http://arxiv.org/abs/1002.4112.
Use plsRbeta
instead.
Frédéric Bertrand, Nicolas Meyer, Michèle Beau-Faller, Karim El Bayed, Izzie-Jacques Namer, Myriam Maumy-Bertrand (2013). Régression Bêta PLS. Journal de la Société Française de Statistique, 154(3):143-159. http://publications-sfds.math.cnrs.fr/index.php/J-SFdS/article/view/215
Frédéric Bertrand
frederic.bertrand@utt.fr
https://fbertran.github.io/homepage/
data("GasolineYield",package="betareg") modpls <- PLS_beta_formula(yield~.,data=GasolineYield,nt=3,modele="pls-beta")#> ____************************************************____ #> #> Model: pls-beta #> #> Link: logit #> #> Link.phi: #> #> Type: ML #> #> ____Component____ 1 ____ #> ____Component____ 2 ____ #> ____Component____ 3 ____ #> ____Predicting X without NA neither in X or Y____ #> ****________________________________________________**** #>modpls$pp#> Comp_ 1 Comp_ 2 Comp_ 3 #> gravity 0.37895923 -0.42864981 0.50983922 #> pressure 0.61533000 -0.41618828 -0.01737302 #> temp10 -0.50627633 0.47379983 -0.47750566 #> temp 0.30248369 0.60751756 0.28239621 #> batch1 0.50274128 -0.30221156 -0.25801764 #> batch2 -0.14241033 -0.13859422 0.80068659 #> batch3 -0.04388172 -0.17303214 0.48564161 #> batch4 0.11299471 -0.08302689 0.04755182 #> batch5 0.23341035 0.08396326 -0.51238456 #> batch6 0.07974302 0.07209943 -0.30710455 #> batch7 -0.37365392 -0.02133356 0.81852001 #> batch8 -0.12891598 0.16967195 -0.06904725 #> batch9 -0.02230288 0.19425476 -0.57189134 #> batch10 -0.25409429 0.28587553 -0.61277072modpls$Coeffs#> [,1] #> Intercept -4.1210566077 #> gravity 0.0157208676 #> pressure 0.0305159627 #> temp10 -0.0074167766 #> temp 0.0108057945 #> batch1 0.0910284843 #> batch2 0.1398537354 #> batch3 0.2287070465 #> batch4 -0.0008124326 #> batch5 0.1018679027 #> batch6 0.1147971957 #> batch7 -0.1005469609 #> batch8 -0.0447907428 #> batch9 -0.0706292318 #> batch10 -0.1984703429modpls$Std.Coeffs#> [,1] #> Intercept -1.5526788976 #> gravity 0.0885938394 #> pressure 0.0799466278 #> temp10 -0.2784359925 #> temp 0.7537685874 #> batch1 0.0305865495 #> batch2 0.0414169259 #> batch3 0.0677303525 #> batch4 -0.0002729861 #> batch5 0.0301676274 #> batch6 0.0339965674 #> batch7 -0.0337848600 #> batch8 -0.0132645358 #> batch9 -0.0173701781 #> batch10 -0.0587759166modpls$InfCrit#> AIC BIC Chi2_Pearson_Y RSS_Y pseudo_R2_Y R2_Y #> Nb_Comp_0 -52.77074 -49.83927 30.72004 0.35640772 NA NA #> Nb_Comp_1 -87.96104 -83.56383 31.31448 0.11172576 0.6879757 0.6865226 #> Nb_Comp_2 -114.10269 -108.23975 33.06807 0.04650238 0.8671800 0.8695248 #> Nb_Comp_3 -152.71170 -145.38302 30.69727 0.01138837 0.9526757 0.9680468modpls$PredictY[1,]#> gravity pressure temp10 temp batch1 batch2 batch3 #> 2.0495333 1.6866554 -1.3718198 -1.8219769 2.6040833 -0.3165683 -0.3165683 #> batch4 batch5 batch6 batch7 batch8 batch9 batch10 #> -0.3720119 -0.3165683 -0.3165683 -0.3720119 -0.3165683 -0.2541325 -0.3165683