The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

BLE_SRS

library(BayesSampling)

Application of the BLE to the Simple Random Sample design

(From Section 2.3.1 of the “Gonçalves, Moura and Migon: Bayes linear estimation for finite population with emphasis on categorical data”)

In a simple model, where there is no auxiliary variable, and a Simple Random Sample was taken from the population, we can calculate the Bayes Linear Estimator for the individuals of the population with the BLE_SRS() function, which receives the following parameters:

Vague Prior Distribution

Letting \(v \to \infty\) and keeping \(\sigma^2\) fixed, that is, assuming prior ignorance, the resulting estimator will be the same as the one seen in the design-based context for the simple random sampling case. 

This can be achieved using the BLE_SRS() function by omitting either the prior mean and/or the prior variance, that is:

Examples

  1. We will use the TeachingSampling’s BigCity dataset for this example (actually we have to take a sample of size \(10000\) from this dataset so that R can perform the calculations). Imagine that we want to estimate the mean or the total Expenditure of this population, after taking a simple random sample of only 20 individuals, but applying a prior information (taken from a previous study or an expert’s judgment) about the mean expenditure (a priori mean = \(300\)).
data(BigCity)
set.seed(1)
Expend <- sample(BigCity$Expenditure,10000)
mean(Expend)          #Real mean expenditure value, goal of the estimation
#> [1] 375.586
ys <- sample(Expend, size = 20, replace = FALSE)

Our design-based estimator for the mean will be the sample mean:

mean(ys)
#> [1] 479.869

Applying the prior information about the population we can get a better estimate, especially in cases when only a small sample is available:

Estimator <- BLE_SRS(ys, N = 10000, m=300, v=10.1^5, sigma = sqrt(10^5))

Estimator$est.beta
#>       Beta
#> 1 390.8338
Estimator$Vest.beta
#>         V1
#> 1 2524.999
Estimator$est.mean[1,]
#> [1] 390.8338
Estimator$Vest.mean[1:5,1:5]
#>           V1         V2         V3         V4         V5
#> 1 102524.999   2524.999   2524.999   2524.999   2524.999
#> 2   2524.999 102524.999   2524.999   2524.999   2524.999
#> 3   2524.999   2524.999 102524.999   2524.999   2524.999
#> 4   2524.999   2524.999   2524.999 102524.999   2524.999
#> 5   2524.999   2524.999   2524.999   2524.999 102524.999
  1. Example from the help page
ys <- c(5,6,8)
N <- 5
m <- 6
v <- 5
sigma <- 1

Estimator <- BLE_SRS(ys, N, m, v, sigma)
Estimator
#> $est.beta
#>       Beta
#> 1 6.307692
#> 
#> $Vest.beta
#>          V1
#> 1 0.3076923
#> 
#> $est.mean
#>     y_nots
#> 1 6.307692
#> 2 6.307692
#> 
#> $Vest.mean
#>          V1        V2
#> 1 1.3076923 0.3076923
#> 2 0.3076923 1.3076923
#> 
#> $est.tot
#> [1] 31.61538
#> 
#> $Vest.tot
#> [1] 3.230769
  1. Example from the help page, but informing sample mean and sample size instead of sample observations
ys <- mean(c(5,6,8))
n <- 3
N <- 5
m <- 6
v <- 5
sigma <- 1

Estimator <- BLE_SRS(ys, N, m, v, sigma, n)
#> sample mean informed instead of sample observations, parameters 'n' and 'sigma' will be necessary
Estimator
#> $est.beta
#>       Beta
#> 1 6.307692
#> 
#> $Vest.beta
#>          V1
#> 1 0.3076923
#> 
#> $est.mean
#>     y_nots
#> 1 6.307692
#> 2 6.307692
#> 
#> $Vest.mean
#>          V1        V2
#> 1 1.3076923 0.3076923
#> 2 0.3076923 1.3076923
#> 
#> $est.tot
#> [1] 31.61538
#> 
#> $Vest.tot
#> [1] 3.230769

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.