Description Usage Arguments Details Value Author(s) References See Also Examples
Calculates Horvitz-Thompson estimate with different methods for variance estimation such as Yates and Grundy, Hansen-Hurwitz and Hajek.
1 | htestimate(y, N, PI, pk, pik, method = 'yg')
|
y |
vector of observations |
N |
integer for population size |
PI |
square matrix of second order inclusion probabilities with |
pk |
vector of first order inclusion probabilities of length |
pik |
an optional vector of first order inclusion probabilities of length |
method |
method to be used for variance estimation. Options are |
For using methods 'yg' or 'ht' has to be provided matrix PI, and for 'hh' and 'ha' has to be specified vector pk of inclusion probabilities.
Additionally, for Hajek method 'ha' can be specified pik. Unless, an approximate Hajek method is used.
The function htestimate returns a value, which is a list consisting of the components
call |
is a list of call components: |
mean |
mean estimate |
se |
standard error of the mean estimate |
Juliane Manitz
Kauermann, Goeran/Kuechenhoff, Helmut (2010): Stichproben. Methoden und praktische Umsetzung mit R. Springer.
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 | data(influenza)
summary(influenza)
# pps.sampling()
set.seed(108506)
pps <- pps.sampling(z=influenza$population,n=20,method='midzuno')
sample <- influenza[pps$sample,]
# htestimate()
N <- nrow(influenza)
# exact variance estimate
PI <- pps$PI
htestimate(sample$cases, N=N, PI=PI, method='yg')
htestimate(sample$cases, N=N, PI=PI, method='ht')
# approximate variance estimate
pk <- pps$pik[pps$sample]
htestimate(sample$cases, N=N, pk=pk, method='hh')
pik <- pps$pik
htestimate(sample$cases, N=N, pk=pk, pik=pik, method='ha')
# without pik just approximate calculation of Hajek method
htestimate(sample$cases, N=N, pk=pk, method='ha')
# calculate confidence interval based on normal distribution for number of cases
est.ht <- htestimate(sample$cases, N=N, PI=PI, method='ht')
est.ht$mean*N
lower <- est.ht$mean*N - qnorm(0.975)*N*est.ht$se
upper <- est.ht$mean*N + qnorm(0.975)*N*est.ht$se
c(lower,upper)
# true number of influenza cases
sum(influenza$cases)
|
Loading required package: pps
Loading required package: sampling
Loading required package: survey
Loading required package: grid
Loading required package: Matrix
Loading required package: survival
Attaching package: 'survival'
The following objects are masked from 'package:sampling':
cluster, strata
Attaching package: 'survey'
The following object is masked from 'package:graphics':
dotchart
id district population cases
Min. : 1001 LK Aachen : 1 Min. : 34719 Min. : 0.00
1st Qu.: 5877 LK Ahrweiler : 1 1st Qu.: 104553 1st Qu.: 9.00
Median : 8331 LK Aichach-Friedberg: 1 Median : 145130 Median : 27.00
Mean : 8468 LK Alb-Donau-Kreis : 1 Mean : 193910 Mean : 44.58
3rd Qu.: 9778 LK Altenburger Land : 1 3rd Qu.: 244154 3rd Qu.: 59.00
Max. :16077 LK Altenkirchen : 1 Max. :1770629 Max. :410.00
(Other) :418
htestimate object: Estimator for samples with probabilities proportional to size
Method of Yates and Grundy:
Mean estimator: 40.36766
Standard Error: 8.059507
htestimate object: Estimator for samples with probabilities proportional to size
Method of Horvitz-Thompson:
Mean estimator: 40.36766
Standard Error: 8.227719
htestimate object: Estimator for samples with probabilities proportional to size
Method of Hansen-Hurwitz (approximate variance):
Mean estimator: 40.36766
Standard Error: 8.534792
htestimate object: Estimator for samples with probabilities proportional to size
Method of Hajek (approximate variance):
Mean estimator: 40.36766
Standard Error: 8.262482
htestimate object: Estimator for samples with probabilities proportional to size
Method of Hajek (approximate variance):
Mean estimator: 40.36766
Standard Error: 8.244296
Warning message:
In htestimate(sample$cases, N = N, pk = pk, method = "ha") :
Without input of 'pik' just approximative calculation of Hajek method is possible.
[1] 17115.89
[1] 10278.45 23953.33
[1] 18900
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.