# make.calfun: Calibration metrics In survey: Analysis of Complex Survey Samples

## Description

Create calibration metric for use in `calibrate`. The function `F` is the link function described in section 2 of Deville et al. To create a new calibration metric, specify F-1 and its derivative. The package provides `cal.linear`, `cal.raking`, `cal.logit`, which are standard, and `cal.sinh` from the `CALMAR2` macro, for which `F` is the derivative of the inverse hyperbolic sine.

## Usage

 `1` ```make.calfun(Fm1, dF, name) ```

## Arguments

 `Fm1` Function F-1 taking a vector `u` and a vector of length 2, `bounds`. `dF` Derivative of `Fm1` wrt `u`: arguments `u` and `bounds` `name` Character string to use as name

## Value

An object of class `"calfun"`

## References

Deville J-C, Sarndal C-E, Sautory O (1993) Generalized Raking Procedures in Survey Sampling. JASA 88:1013-1020

Deville J-C, Sarndal C-E (1992) Calibration Estimators in Survey Sampling. JASA 87: 376-382

`calibrate`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21``` ```str(cal.linear) cal.linear\$Fm1 cal.linear\$dF hellinger <- make.calfun(Fm1=function(u, bounds) ((1-u/2)^-2)-1, dF= function(u, bounds) (1-u/2)^-3 , name="hellinger distance") hellinger data(api) dclus1<-svydesign(id=~dnum, weights=~pw, data=apiclus1, fpc=~fpc) svymean(~api00,calibrate(dclus1, ~api99, pop=c(6194, 3914069), calfun=hellinger)) svymean(~api00,calibrate(dclus1, ~api99, pop=c(6194, 3914069), calfun=cal.linear)) svymean(~api00,calibrate(dclus1, ~api99, pop=c(6194,3914069), calfun=cal.raking)) ```