# dfs_momt: Moment frontier estimator In npbr: Nonparametric Boundary Regression

## Description

This function is an implementation of the moment-type estimator developed by Daouia, Florens and Simar (2010).

## Usage

 `1` ```dfs_momt(xtab, ytab, x, rho, k, ci=TRUE) ```

## Arguments

 `xtab` a numeric vector containing the observed inputs x1,...,xn. `ytab` a numeric vector of the same length as `xtab` containing the observed outputs y1,...,yn. `x` a numeric vector of evaluation points in which the estimator is to be computed. `rho` a numeric vector of the same length as `x` or a scalar, which determines the values of rho. `k` a numeric vector of the same length as `x` or a scalar, which determines the thresholds at which the moment estimator will be computed. `ci` a boolean, TRUE for computing the confidence interval.

## Details

Combining ideas from Dekkers, Einmahl and de Haan (1989) with the dimensionless transformation z[i]^x={y[i]1(x[i]<=x), i=1,...,n)} of the observed sample (x[i],y[i]), i=1,...,n, the authors estimate the conditional endpoint varphi(x) by

tilde(varphi[momt])(x)= z[n-k]^x + z[n-k]^x M[n]^(1)(1+rho[x])

where M[n]^(1)=(1/k)Sum[i=0]^(k-1)(log(z[(n-i)]^x)-log(z[(n-k)]^x)), z[(1)]^x<=...<=z[(n)]^x are the ascending order statistics corresponding to the transformed sample z[i]^x, i=1,...,n) and rho[x]>0 is referred to as the extreme-value index and has the following interpretation: when rho[x]>2, the joint density of data decays smoothly to zero at a speed of power rho[x]-2 of the distance from the frontier; when rho[x]=2, the density has sudden jumps at the frontier; when rho[x]<2, the density increases toward infinity at a speed of power rho[x]-2 of the distance from the frontier. Most of the contributions to econometric literature on frontier analysis assume that the joint density is strictly positive at its support boundary, or equivalently, rho[x]=2 for all x. When rho[x] is unknown, Daouia et al. (2010) suggest to use the following two-step estimator: First, estimate rho[x] by the moment estimator tilde(rho)[x] implemented in the function `rho_momt_pick` by utilizing the option `method="moment"`, or by the Pickands estimator hat(rho)[x] by using the option `method="pickands"`. Second, use the estimator tilde(varphi[momt])(x), as if rho[x] were known, by substituting the estimated value tilde(rho)[x] or hat(rho)[x] in place of rho[x]. The 95\% confidence interval of varphi(x) derived from the asymptotic normality of tilde(varphi[momt])(x) is given by

[tilde(varphi)[momt](x) +- 1.96 sqrt(V(rho[x])/k) z^x[(n-k)] M^(1)[n](1 + 1/rho[x]) ]

where V(rho[x]) = rho^2[x] (1+2/rho[x])^(-1). The sample fraction k=k[n](x) plays here the role of the smoothing parameter and varies between 1 and N[x]-1, with N[x]=Sum[i=1]^n1(x[i]<=x) being the number of observations (x[i],y[i]) with x[i]<=x. See `kopt_momt_pick` for an automatic data-driven rule for selecting k.

## Value

Returns a numeric vector with the same length as `x`.

## Note

As it is common in extreme-value theory, good results require a large sample size N[x] at each evaluation point x. See also the note in `kopt_momt_pick`.

## Author(s)

Abdelaati Daouia and Thibault Laurent (converted from Leopold Simar's Matlab code).

## References

Daouia, A., Florens, J.P. and Simar, L. (2010). Frontier Estimation and Extreme Value Theory, Bernoulli, 16, 1039-1063.

Dekkers, A.L.M., Einmahl, J.H.J. and L. de Haan (1989), A moment estimator for the index of an extreme-value distribution, nnals of Statistics, 17, 1833-1855.

`dfs_pick`, `kopt_momt_pick`.
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49``` ```data("post") x.post <- seq(post\$xinput, max(post\$xinput), length.out = 100) # 1. When rho[x] is known and equal to 2, we set: rho <- 2 # To determine the sample fraction k=k[n](x) # in tilde(varphi[momt])(x). best_kn.1 <- kopt_momt_pick(post\$xinput, post\$yprod, x.post, rho = rho) # To compute the frontier estimates and confidence intervals: res.momt.1 <- dfs_momt(post\$xinput, post\$yprod, x.post, rho = rho, k = best_kn.1) # Representation plot(yprod~xinput, data = post, xlab = "Quantity of labor", ylab = "Volume of delivered mail") lines(x.post, res.momt.1[,1], lty = 1, col = "cyan") lines(x.post, res.momt.1[,2], lty = 3, col = "magenta") lines(x.post, res.momt.1[,3], lty = 3, col = "magenta") ## Not run: # 2. rho[x] is unknown and estimated by # the Pickands estimator tilde(rho[x]) rho_momt <- rho_momt_pick(post\$xinput, post\$yprod, x.post) best_kn.2 <- kopt_momt_pick(post\$xinput, post\$yprod, x.post, rho = rho_momt) res.momt.2 <- dfs_momt(post\$xinput, post\$yprod, x.post, rho = rho_momt, k = best_kn.2) # 3. rho[x] is unknown independent of x and estimated # by the (trimmed) mean of tilde(rho[x]) rho_trimmean <- mean(rho_momt, trim=0.00) best_kn.3 <- kopt_momt_pick(post\$xinput, post\$yprod, x.post, rho = rho_trimmean) res.momt.3 <- dfs_momt(post\$xinput, post\$yprod, x.post, rho = rho_trimmean, k = best_kn.3) # Representation plot(yprod~xinput, data = post, col = "grey", xlab = "Quantity of labor", ylab = "Volume of delivered mail") lines(x.post, res.momt.2[,1], lty = 1, lwd = 2, col = "cyan") lines(x.post, res.momt.2[,2], lty = 3, lwd = 4, col = "magenta") lines(x.post, res.momt.2[,3], lty = 3, lwd = 4, col = "magenta") plot(yprod~xinput, data = post, col = "grey", xlab = "Quantity of labor", ylab = "Volume of delivered mail") lines(x.post, res.momt.3[,1], lty = 1, lwd = 2, col = "cyan") lines(x.post, res.momt.3[,2], lty = 3, lwd = 4, col = "magenta") lines(x.post, res.momt.3[,3], lty = 3, lwd = 4, col = "magenta") ## End(Not run) ```