R: Linear and nonlinearconstrasts of survey statistics

svycontrast {survey} | R Documentation

## Linear and nonlinearconstrasts of survey statistics

### Description

Computes linear or nonlinear contrasts of estimates produced by survey functions (or any object with `coef` and `vcov` methods).

### Usage

    svycontrast(stat, contrasts, ...)

### Arguments

`stat` | object of class `svrepstat` or `svystat`
`contrasts` | A vector or list of vectors of coefficients, or a call or list of calls
`...` | For future expansion

### Details

If `contrasts` is a list, the element names are used as names for the returned statistics.

If an element of `contrasts` is shorter than `coef(stat)` and has names, the names are used to match up the vectors and the remaining elements of `contrasts` are assumed to be zero. If the names are not legal variable names (eg `0.1`) they must be quoted (eg `"0.1"`)

If `contrasts` is a `"call"` or list of `"call"s`, the delta-method is used to compute variances, and the calls must use only functions that `deriv` knows how to differentiate. If the names are not legal variable names they must be quoted with backticks (eg ``0.1``).

### Value

Object of class `svrepstat` or `svystat`

### See Also

`regTermTest`, `svyglm`

### Examples

    data(api)
    dclus1<-svydesign(id=~dnum, weights=~pw, data=apiclus1, fpc=~fpc)

    a <- svytotal(~api00+enroll+api99, dclus1)
    svycontrast(a, list(avg=c(0.5,0,0.5), diff=c(1,0,-1)))
    ## if contrast vectors have names, zeroes may be omitted
    svycontrast(a, list(avg=c(api00=0.5,api99=0.5), diff=c(api00=1,api99=-1)))

    ## nonlinear contrasts
    svycontrast(a, quote(api00/api99))
    svyratio(~api00, ~api99, dclus1)

    ## Example: standardised skewness coefficient
    moments<-svymean(~I(api00^3)+I(api00^2)+I(api00), dclus1)
    svycontrast(moments,
    quote((`I(api00^3)`-3*`I(api00^2)`*`I(api00)`+ 3*`I(api00)`*`I(api00)`^2-`I(api00)`^3)/
          (`I(api00^2)`-`I(api00)`^2)^1.5))

[Package survey version 3.32-1 Index]