# Lcomoment.Wk: Weighting Coefficient for Sample L-comoment In wasquith/lmomco: L-Moments, Censored L-Moments, Trimmed L-Moments, L-Comoments, and Many Distributions

## Description

Compute the weight factors for computation of an L-comoment for order k, order statistic r, and sample size n.

## Usage

 1 Lcomoment.Wk(k,r,n) 

## Arguments

 k Order of L-comoment being computed by parent calls to Lcomoment.Wk. r Order statistic index involved. n Sample size.

## Details

This function computes the weight factors needed to calculation L-comoments and is interfaced or used by Lcomoment.Lk12. The weight factors are

w^{(k)}_{r:n} = ∑_{j=0}^{min\{r-1,k-1\}} (-1)^{k-1-j} \frac{{k-1 \choose j}{k-1+j \choose j} {r-1 \choose j}} {{n-1 \choose j}} \mbox{.}

The weight factor w^{(k)}_{r:n} is the discrete Legendre polynomial. The weight factors are well illustrated in figure 6.1 of Asquith (2011). This function is not intended for end users.

## Value

A single L-comoment weight factor.

## Note

The function begins with a capital letter. This is intentionally done so that lower case namespace is preserved. By using a capital letter now, then lcomoment.Wk remains an available name in future releases.

W.H. Asquith

## References

Asquith, W.H., 2011, Distributional analysis with L-moment statistics using the R environment for statistical computing: Createspace Independent Publishing Platform, ISBN 978–146350841–8.

Serfling, R., and Xiao, P., 2007, A contribution to multivariate L-moments—L-comoment matrices: Journal of Multivariate Analysis, v. 98, pp. 1765–1781.

Lcomoment.Lk12
  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 Wk <- Lcomoment.Wk(2,3,5) print(Wk) ## Not run: # To compute the weight factors for L-skew and L-coskew (k=3) computation # for a sample of size 20. Wk <- matrix(nrow=20,ncol=1) for(r in seq(1,20)) Wk[r] <- Lcomoment.Wk(3,r,20) plot(seq(1,20),Wk, type="b") ## End(Not run) # The following shows the actual weights used for computation of # the first four L-moments. The sum of the each sample times the # corresponding weight equals the L-moment. fakedat <- sort(c(-10, 20, 30, 40)); n <- length(fakedat) Wk1 <- Wk2 <- Wk3 <- Wk4 <- vector(mode="numeric", length=n); for(i in 1:n) { Wk1[i] <- Lcomoment.Wk(1,i,n)/n Wk2[i] <- Lcomoment.Wk(2,i,n)/n Wk3[i] <- Lcomoment.Wk(3,i,n)/n Wk4[i] <- Lcomoment.Wk(4,i,n)/n } cat(c("Weights for mean", round(Wk1, digits=4), "\n")) cat(c("Weights for L-scale", round(Wk2, digits=4), "\n")) cat(c("Weights for 3rd L-moment", round(Wk3, digits=4), "\n")) cat(c("Weights for 4th L-moment", round(Wk4, digits=4), "\n")) my.lams <- c(sum(fakedat*Wk1), sum(fakedat*Wk2), sum(fakedat*Wk3), sum(fakedat*Wk4)) cat(c("Manual L-moments:", my.lams, "\n")) cat(c("lmomco L-moments:", lmoms(fakedat, nmom=4)\$lambdas,"\n")) # The last two lines of output should be the same---note that lmoms() # does not utilize Lcomoment.Wk(). So a double check is made.