version 3.19
Function to enable theory evaluation, as introduced by Ragin (1987, p.118)
and extended Schneider & Wageman (2012, p.295), by producing parameters of fit
for all possible intersections between a given theoretical statement (a SOP
expresison) and the solutions found by function
minimize()
.
modelFit(model, theory)
model |
A minimization object of class "QCA_min" . |
|||
theory |
Character, a SOP expression. |
There are in fact four intersections: presence - presence, presence - absence,
absence - presence and absence - absence, where by "absence" is actually
meant a negation of an expression using the function
negate()
.
When multiple models exist, all of them are automatically detected, negated and intersection with the theory. Intersections and parameters of fit are going to be produced using a single theoretical expression.
"QCA_pof"
with the parameters of fit. For a
single theoretical expression and a single model, the object is a simple
"QCA_pof"
object.
Ragin, C.C. (1987) The Comparative Method: Moving beyond Qualitative and Quantitative Strategies. Berkeley: University of California Press.
Schneider, C.Q.; Wagemann, C. (2012) Set-Theoretic Methods for the Social Sciences: A Guide to Qualitative Comparative Analysis (QCA). Berkeley: University of California Press.
# Lipset fuzzy version data ttLF <- truthTable(LF, outcome = "SURV", incl.cut = 0.8) # parsimonious solution pLF <- minimize(ttLF, include = "?") modelFit(model = pLF, theory = "DEV*STB")model: DEV*~IND + URB*STB theory: DEV*STB model*theory: DEV*URB*STB + DEV*~IND*STB model*~theory: ~DEV*URB*STB + DEV*~IND*~STB ~model*theory: DEV*~URB*IND*STB ~model*~theory: ~DEV*~URB + ~DEV*~STB + IND*~STB inclS PRI covS -------------------------------------- 1 DEV*~IND 0.815 0.721 0.284 2 URB*STB 0.874 0.845 0.520 3 model 0.850 0.819 0.714 4 theory 0.869 0.848 0.824 5 model*theory 0.866 0.839 0.660 6 model*~theory 0.688 0.422 0.191 7 ~model*theory 0.709 0.634 0.237 8 ~model*~theory 0.234 0.057 0.255 --------------------------------------# hypothetical exploration of intermediate solutions iLF <- minimize(ttLF, include = "?", dir.exp = "1,0,0,0,0") modelFit(iLF, "DEV*STB")M-C1P1 model: DEV*URB*STB + DEV*~URB*~IND theory: DEV*STB model*theory: DEV*URB*STB + DEV*~URB*~IND*STB model*~theory: DEV*~URB*~IND*~STB ~model*theory: DEV*~URB*IND*STB ~model*~theory: ~DEV + URB*~STB + ~URB*IND*~STB inclS PRI covS -------------------------------------- 1 DEV*URB*STB 0.901 0.879 0.468 2 DEV*~URB*~IND 0.806 0.719 0.268 3 model 0.866 0.839 0.662 4 theory 0.869 0.848 0.824 5 model*theory 0.866 0.839 0.660 6 model*~theory 0.671 0.311 0.122 7 ~model*theory 0.709 0.634 0.237 8 ~model*~theory 0.254 0.091 0.295 --------------------------------------