ForcedResponse {RRTCS}R Documentation

Forced-Response model

Description

Computes the randomized response estimation, its variance estimation and its confidence interval through the Forced-Response model. The function can also return the transformed variable. The Forced-Response model was proposed by Boruch in 1972.

Usage

ForcedResponse(z,p1,p2,pi,type=c("total","mean"),cl,N=NULL,pij=NULL)

Arguments

z

vector of the observed variable; its length is equal to n (the sample size)

p1

proportion of cards marked "Yes"

p2

proportion of cards marked "No"

pi

vector of the first-order inclusion probabilities

type

the estimator type: total or mean

cl

confidence level

N

size of the population. By default it is NULL

pij

matrix of the second-order inclusion probabilities. By default it is NULL

Details

In the Forced-Response scheme, the sampled person i is offered a box with cards: some are marked "Yes" with a proportion p_1, some are marked "No" with a proportion p_2 and the rest are marked "Genuine", in the remaining proportion p_3=1-p_1-p_2, where 0<p_1,p_2<1,p_1\neq p_2,p_1+p_2<1. The person is requested to randomly draw one of them, to observe the mark on the card, and to respond

z_i=\left \{\begin{array}{lccc} 1 & \textrm{if the card is type "Yes"}\\ 0 & \textrm{if the card is type "No"}\\ y_i & \textrm{if the card is type "Genuine"} \end{array} \right .

The transformed variable is r_i=\frac{z_i-p_1}{1-p_1-p_2} and the estimated variance is \widehat{V}_R(r_i)=r_i(r_i-1).

Value

Point and confidence estimates of the sensitive characteristics using the Forced-Response model. The transformed variable is also reported, if required.

References

Boruch, R.F. (1972). Relations among statistical methods for assuring confidentiality of social research data. Social Science Research, 1, 403-414.

See Also

ForcedResponseData

ForcedResponseDataSt

ResamplingVariance

Examples

data(ForcedResponseData)
dat=with(ForcedResponseData,data.frame(z,Pi))
p1=0.2
p2=0.2
cl=0.95
ForcedResponse(dat$z,p1,p2,dat$Pi,"total",cl)

#Forced Response with strata
data(ForcedResponseDataSt)
dat=with(ForcedResponseDataSt,data.frame(ST,z,Pi))
p1=0.2
p2=0.2
cl=0.95
ForcedResponse(dat$z,p1,p2,dat$Pi,"total",cl)

[Package RRTCS version 0.0.4 Index]