rank.gs {RankResponse}R Documentation

Rank Responses based on the Generalized Score Test

Description

Rank responses of a single response question or a multiple response question by the generalized score test procedure.

Usage

rank.gs(data, alpha = 0.05, ranktype = 1)

Arguments

data

A m by n matrix dijd_{ij}, where dijd_{ij} = 0 or 1. If the ith respondent selects the jth response, then dijd_{ij} = 1, otherwise dijd_{ij} = 0.

alpha

The significance level is used to control the type I error rate. The default is 0.05.

ranktype

A numerical value specifies which type of ranking method is used. The default is 1 (see 'Details').

Details

Suppose that the question has k responses. Let πj\pi_{j} denote the probability that the jth response is selected. Using the survey data, πj\pi_{j} can be estimated.

If ranktype is 1, the ranking rule is the following steps. Let π(j)\pi_{(j)} denote the order statistic. If the hypothesis π(k)\pi_{(k)} = π(k1)\pi_{(k-1)} is rejected, we rank the response corresponding to π(k)\pi_{(k)} first. If it is not rejected, we compare π(k)\pi_{(k)} with π(j)\pi_{(j)} , jk2j \le k-2 sequentially.

If ranktype is 2, the rank of the ith response can be defined as

Ri=kj=1,jikI(πi>πj) R_{i} = k - \sum_{j=1, j\ne i}^{k} I(\pi_{i} > \pi_{j})

Value

rank.gs returns a table contains the estimated probabilities of the responses being selected in the first line and the ranks of the responses in the second line.

Author(s)

Hsiuying Wang wang@stat.nycu.edu.tw , Wan-Ting Huang wthuang.sc09@nycu.edu.tw , Yu-Chun Lin restart79610@hotmail.com

References

Wang, H. (2008). Ranking Responses in Multiple-Choice Questions. Journal of Applied Statistics, 35, 465-474.

Wang, H. and Huang, W. H. (2014). Bayesian Ranking Responses in Multiple Response Questions. Journal of the Royal Statistical Society: Series A (Statistics in Society), 177, 191-208.

See Also

rankL2R, rankLN, rank.wald

Examples

set.seed(12345)
# This is an example to rank k responses in a multiple response question
# when the number of respondents is 1000.
# In this example, we do not use a real data, but generate data in the first six lines.
k <- 5
data <- matrix(NA, nrow = 1000, ncol = k)
for(i in 1:k){
  p <- runif(1)
  data[, i] <- sample(c(0, 1), 1000, p = c(p, 1-p), replace = TRUE)
}
## or upload the true data
rank.gs(data)


[Package RankResponse version 4.0.0 Index]