retention: Compute Retention Probabilities of QCA Baseline Solutions

Description Usage Arguments Details Contributors Author(s) References See Also Examples

Description

This evaluation function computes retention probabilities of QCA baseline solutions. It has been programmed for Thiem, Spoehel, and Dusa (2016) and builds on Thiem (2014).

Usage

1
2
3
retention(data, outcome = "", exo.facs = c(""), type = "corruption",
          assump = "DPA", n.cut = 1, incl.cut = 1, p.pert = 0.5,
          n.pert = 1)

Arguments

data

A dataset of bivalent crisp-set factors.

outcome

The name of the outcome.

exo.facs

A character vector with the names of the exogenous factors.

type

Induce errors on the endogenous factor or delete cases.

assump

Assume dependent or independent perturbations.

n.cut

The minimum number of cases for a minterm not to be considered as a remainder.

incl.cut

The minimum sufficiency inclusion score for an output function value of "1".

p.pert

The probability of perturbation under independence.

n.pert

The number of perturbations under dependence.

Details

This function computes exact retention probabilities of QCA baseline solutions for saturated truth tables and truth tables with a two-difference restriction (every remainder differs on at least two positions from every positive minterm).

The argument data requires a suitable dataset. Suitable datasets have the following structure: values of "0" and "1" for bivalent crisp-set factors.

The argument exo.facs specifies the exogenous factors. If omitted, all factors in data are used except that of the outcome.

The argument type specifies whether errors are to be induced in the endogenous factor ("1" is recoded to "0"; "0" is recoded to "1") of cases or whether entire cases are to be deleted from the data.

The argument assump specifies whether the perturbations detailed in type occur independently of each other or whether they are dependent on each other. Note that the assumption of dependence increases the consumption of computational resources significantly.

Minterms that contain fewer than n.cut cases with membership scores above 0.5 are coded as remainders (OUT = "?"). If the number of such cases is at least n.cut, minterms with an inclusion score of at least incl.cut are coded positive (OUT = "1"), and minterms with an inclusion score below incl.cut are coded negative (OUT = "0"). The possibility to specify contradictions using a second inclusion cut-off as in the truthTable function does not exist.

The argument p.pert specifies the probability of perturbation for type = "independent". For example, if p.pert = 1, each case is guaranteed to have measurement error on the endogenous factor.

The argument n.pert specifies the number of perturbations for type = "dependent". This must be an integer between zero (no case suffers from measurement error in the endogenous factor or no case gets deleted) and the total number of cases in data (all cases suffer from measurement error in the endogenous factor or all cases get deleted.)

Contributors

Dusa, Adrian: programming, testing
Spoehel, Reto: development
Thiem, Alrik: development, documentation, testing

Author(s)

Alrik Thiem (Personal Website; ResearchGate Website)

References

Thiem, Alrik. 2014. “Mill's Methods, Induction and Case Sensitivity in Qualitative Comparative Analysis: A Comment on Hug (2013).” Qualitative & Multi-Method Research 12 (2):19-24. Link.

Thiem, Alrik, Reto Spoehel, and Adrian Dusa. 2016. “Enhancing Sensitivity Diagnostics for Qualitative Comparative Analysis: A Combinatorial Approach.” Political Analysis 24 (1):104-20. DOI: 10.1093/pan/mpv028.

See Also

truthTable

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# replicate results from Hug (2013) for 2 deleted cases
#------------------------------------------------------
dat <- data.frame(matrix(c(
   rep(1,25),rep(0,20),rep(c(0,0,1,0,0),3),
   0,0,0,1,0,0,1,0,0,0,0,rep(1,7),0,1),
   nrow = 16, byrow = TRUE, dimnames = list(c(
    "AT","DK","FI","NO","SE","AU","CA","FR",
    "US","DE","NL","CH","JP","NZ","IE","BE"),
   c("P", "U", "C", "S", "W"))
))

retention(dat, outcome = "W", type = "deletion", assump = "dependent", n.pert = 2)

AlrikThiem/QCApro documentation built on May 5, 2019, 4:55 a.m.