(RME) for nonlinear regression with heteroscedastic variance, when the variance of error is general parameteric function of unkown parameters. Robust form of CME (See dfr.hetro
).
dfr.robhetro(formula, data, start = getInitial(formula, data), control = nlr.control(
tolerance = 1e-05, minlanda = 1/2^10, maxiter = 100 * length(start)), robfunc, varmodel,
tau = NULL, method = "NLM", ...)
nl.form
object of the nonlinear function model.
list of data include responce and predictor.
list of parameter values of nonlinear model function (\(\theta\)).
list of nlr.control
for controling convergence criterions.
nl.form object of robust function used for downgrading.
nl.fomr
object of variance function model for heteroscedastic variance.
list of initial values for variance model function varmodel
argument.
="NLM" means using nlmest.NLM
function,or ="NM" means using derivative free nlmest.NM
function
extra arguments to nonlinear regression model, heteroscedastic variance function, robust loss function or its tuning constants.
nl.fitt.rgn
for heterogeneous and autocorrelated error (nonlinear fitt robust generalized) will return.
nonlinear regression parameter estimate of \(\theta\).
of fited model.
nl.form
object of called nonlinear regression model.
computed response.
computed (right side of formula) at estimated parameter with gradient and hessian attributes.
list of curvatures, see curvature
function.
matrix of convergence history, collumns include: convergence index, parameters, minimized objective function, convergence criterion values, or other values. These values will be used in plot
function in ploting history.
fittmethod
object of method used for fitt.
list of called data.
Object of class "callorNULL"
source function called for fitt.
Fault
object of error, if no error Fault number = 0 will return back.
robust loss value including gradient and hessain attributes.
computed robust rho function, including gradient and hessain attributes.
estimated residuals, including gradient and hessain attributes.
curvature
nl.form
object of robust loss rho function.
covariance matrix, diagonal of variance model predicted values.
cholesky decomposition of vm.
transformed of response by rm, include gradinet and hessian attributes.
transformed of predictor by rm, include gradinet and hessian attributes.
nl.fitt.rob
object of fited variance odel:
parametersestimate of variance parameter \(\tau\)
formnl.form
object of called varmodel
.
predictorvariance model computed at estimated parameter, \(H(x;\hat\tau)\)
responsesample variance computed used as response variable.
historymatrix of convergence history, collumns include: convergence index, parameters, minimized objective function, convergence criterion values, or other values.
methodfittmethod
object of method used for fitt.
dataresponse (\(z_i\)) and predictor t
variable values, used to computing the variance model.
sourcefncObject of class "callorNULL"
source function called for fitt.
FaultFault
object of error, if no error Fault number = 0 will return back.
hthetarobust loss value including gradient and hessain attributes, for variance model. In fact is loglikelihood values.
rhocomputed robust rho function, including gradient and hessain attributes.
$refvar reference variance. variance of zi's.
In stage 1 the nonlinear model parameter estimates by robust MM-estimate, Stage 2 compute robust sample variance of data, Stage 3 estimate the parameter of variance function model by maximizing the robustified form of chi-square pseudo-likelihood function. Stage 4 estimate the final value of function model parameter by generalized robust MM-estimate.
Riazoshams, H,. 2010. Outlier detection and robust estimation methods for nonlinear regression having autocorrelated and heteroscedastic errors. PhD thesis disertation, University Putra Malaysia.
Riazoshams H, Midi H, and Ghilagaber G, 2018,. Robust Nonlinear Regression, with Application using R, Joh Wiley and Sons.
dfr.hetro
, nlr.control
, fittmethod
, nl.form
, nl.fitt.rob
, nl.fitt.rgn
, nlr.control
# NOT RUN {
ntpstart=list(p1=.12,p2=6,p3=1,p4=33)
ntpstarttau=list(tau1=-.66,tau2=2,tau3=.04)
datalist=list(xr=ntp$dm.k,yr=ntp$cm.k)
rbhfitt <- dfr.robhetro(formula=nlrobj1[[16]],data=datalist,start=ntpstart,
robfunc=nl.robfuncs[["hampel"]],tau=ntpstarttau,varmodel=nlrobjvarmdls3[[2]],robscale=T,
method="NM",control=nlr.control(tolerance=1e-8))
rbhfitt$parameters
# }
Run the code above in your browser using DataLab