# oneStepEstimator: Function for the computation of one-step estimates In RobAStBase: Robust Asymptotic Statistics

## Description

Function for the computation of one-step estimates.

## Usage

 ```1 2 3 4 5 6``` ```oneStepEstimator(x, IC, start = NULL, useLast = getRobAStBaseOption("kStepUseLast"), withUpdateInKer = getRobAStBaseOption("withUpdateInKer"), IC.UpdateInKer = getRobAStBaseOption("IC.UpdateInKer"), na.rm = TRUE, startArgList = NULL, withMakeIC = FALSE, ..., E.argList = NULL) ```

## Arguments

 `x` sample `IC` object of class `"InfluenceCurve"` `start` initial estimate (for full parameter,i.e. in dimension k respective joint length of main and nuisance part of the parameter): either a numerical value, or an object of class `"Estimate"` or a function producing either a numerical value, or an object of class `"Estimate"` when evaluated at `x,...`; if missing or `NULL`, we use slot `startPar` of the L2family `L2Fam` from within `IC`. `useLast` which parameter estimate (initial estimate or one-step estimate) shall be used to fill the slots `pIC`, `asvar` and `asbias` of the return value. `withUpdateInKer` if there is a non-trivial trafo in the model with matrix D, shall the parameter be updated on ker(D)? `IC.UpdateInKer` if there is a non-trivial trafo in the model with matrix D, the IC to be used for this; if `NULL` the result of `getboundedIC(L2Fam,D)` is taken; this IC will then be projected onto ker(D). `na.rm` logical: if `TRUE`, the estimator is evaluated at `complete.cases(x)`. `startArgList` a list of arguments to be given to argument `start` if the latter is a function; this list by default already starts with two unnamed items, the sample `x`, and the model `eval(CallL2Fam(IC))`; in case `IC` is not of class `IC`, the model argument `L2Fam` will be set to `NULL`. `withMakeIC` logical; if `TRUE` the [p]IC is passed through `makeIC` before return. `...` additional arguments `E.argList` `NULL` (default) or a named list of arguments to be passed to calls to `E` from `kStepEstimator`; potential clashes with arguments of the same name in `...` are resolved by inserting the items of argument list `E.argList` as named items to the argument lists, so in case of collisions the item of `E.argList` overwrites the existing one from `...`.

## Details

Given an initial estimation `start`, a sample `x` and an influence curve `IC` the corresponding one-step estimator is computed.

In case `IC` is an object of class `"IC"` the slots `asvar` and `asbias` of the return value are filled (based on the initial estimate).

The default value of argument `useLast` is set by the global option `kStepUseLast` which by default is set to `FALSE`. In case of general models `useLast` remains unchanged during the computations. However, if slot `CallL2Fam` of `IC` generates an object of class `"L2GroupParamFamily"` the value of `useLast` is changed to `TRUE`. Explicitly setting `useLast` to `TRUE` should be done with care as in this situation the influence curve is re-computed using the value of the one-step estimate which may take quite a long time depending on the model.

If `useLast` is set to `TRUE` and slot `modifyIC` of `IC` is filled with some function (which can be used to re-compute the IC for a different parameter), the computation of `asvar`, `asbias` and `IC` is based on the one-step estimate.

## Value

Object of class `"kStepEstimate"`

## Author(s)

Matthias Kohl [email protected],
Peter Ruckdeschel [email protected]

## References

Rieder, H. (1994) Robust Asymptotic Statistics. New York: Springer.

Kohl, M. (2005) Numerical Contributions to the Asymptotic Theory of Robustness. Bayreuth: Dissertation.

`InfluenceCurve-class`, `kStepEstimate-class`