QCA with \Textsf{R}
Total Page:16
File Type:pdf, Size:1020Kb
Adrian Dușa QCA with R A Comprehensive Resource 2021-06-15 Contents 1 R basics ................................................... 11 1.1 Working directory ....................................... 13 1.2 Workspace .............................................. 13 1.3 Object types ............................................ 14 1.4 Mathematical and logical operations ....................... 17 1.5 Indexing and subsetting .................................. 19 1.6 Data coercion ........................................... 22 1.7 User interfaces .......................................... 24 1.8 Working with script files ................................. 26 2 The QCA package ......................................... 29 2.1 Installing the QCA package .............................. 29 2.2 Structure ............................................... 30 2.3 Command line mode ..................................... 32 2.3.1 Getting help ...................................... 32 2.3.2 Function arguments ............................... 33 2.4 The GUI - graphical user interface ......................... 36 2.4.1 Description ....................................... 36 2.4.2 Starting the graphical user interface ................. 38 2.4.3 Creating an executable icon......................... 39 2.4.4 Command construction ............................ 42 2.4.5 The web R console ................................. 43 2.4.6 Graphics ......................................... 45 2.4.7 The data editor ................................... 48 2.4.8 Import, export and load data ....................... 51 3 Set theory ................................................. 57 3.1 The binary system and the Boolean algebra ................. 57 3.2 Types of sets............................................ 58 3.2.1 Bivalent crisp sets ................................. 59 3.2.2 Multivalent crisp sets .............................. 60 3.2.3 Fuzzy sets ........................................ 61 3 4 Contents 3.3 Set operations .......................................... 62 3.3.1 Set negation ...................................... 63 3.3.2 Logical AND ..................................... 64 3.3.3 Logical OR ....................................... 66 3.4 Complex operations ...................................... 69 4 Calibration ................................................ 71 4.1 Calibrating to crisp sets .................................. 73 4.2 Calibrating to fuzzy sets .................................. 80 4.2.1 Direct assignment ................................. 81 4.2.2 Direct method, the “s-shape” functions ............... 83 4.2.3 How does it works: the logistic function .............. 95 4.2.4 Direct method, the “bell-shape” functions ............ 98 4.2.5 The indirect method ............................... 102 4.3 Calibrating categorical data ............................... 104 5 Analysis of necessity .......................................109 5.1 Conceptual description ................................... 109 5.2 Inclusion / consistency ................................... 115 5.3 Coverage / relevance ..................................... 120 5.4 Necessity for conjunctions and disjunctions ................. 128 5.5 Exploring possible necessity relations ...................... 131 6 Analysis of sufficiency .....................................135 6.1 Conceptual description ................................... 136 6.2 Inclusion / consistency ................................... 140 6.3 The PRI score .......................................... 144 6.4 Coverage: raw and unique ................................ 146 7 The truth table ............................................149 7.1 General considerations ................................... 149 7.2 Command line and GUI dialog ............................ 153 7.3 From fuzzy sets to crisp truth tables ....................... 156 7.4 Calculating consistency scores ............................. 161 7.5 The OUTput value ...................................... 163 7.6 Other details ............................................ 167 8 The Logical Minimization ..................................169 8.1 Command Line and GUI Dialog ........................... 171 8.2 The Conservative (Complex) Solution ...................... 173 8.3 What is explained ....................................... 176 8.4 The Parsimonious Solution ............................... 181 8.5 A Note on Complexity ................................... 185 8.6 Types of counterfactuals .................................. 187 8.7 Intermediate solutions: SA and ESA ....................... 192 8.8 Theory evaluation ....................................... 203 Contents 5 9 Pseudo-counterfactual analysis .............................207 9.1 eQMC ................................................. 208 9.2 Consistency Cubes....................................... 213 9.3 Include vs. exclude ...................................... 217 10 QCA extensions ...........................................219 10.1 Temporal QCA.......................................... 219 10.2 Coincidence analysis: CNA ............................... 224 10.3 Panel / clustered data ................................... 235 10.4 Robustness tests ........................................ 240 11 Less known features .......................................251 11.1 Boolean expressions ...................................... 252 11.2 Negate expressions....................................... 258 11.3 Factorize expressions ..................................... 260 11.4 More parameters of fit ................................... 261 11.5 XY plots ............................................... 264 11.6 Venn diagrams .......................................... 271 References .....................................................283 References .................................................. 283 Preamble The initial idea to write this book emerged in August 2016, with the inten- tion to update the description of package QCA in R. A lot of things have changed since the appearance of the previous user guide five years ago, when the package reached version 1.0-0. Most of the commands are backwards compatible, meaning that all examples from the previous guide still work with the current version of the package. There are some minor but important differences, for instance the function calibrate() has its default changed from type = "crisp" to type = "fuzzy". Examples still work with previous versions, but for crisp calibration the ar- gument type = "crisp" should be explicitly specified. All changes, from all versions of the package, are specified in the ChangeLog file which is located in the package’s installation directory (details at chapter 2). This book is correlated with the release of version 3.7 of the package. There are many new, cutting edge features that were not available before: dramatically improved functionality, and of course a graphical user interface to enable R beginners to use this package using a point and click method. If previously it was all about the command line, now it is all about the interconnection between the command line and the graphical user interface. Since the first edition of this book was published, a few other improvements have been made to the package, most notably introducing conjunctural di- rectional expectations (to be discussed in section 8.7), and a new method of deriving the intermediate solution without using easy counterfactuals, with the same results. In addition, the argument exclude was moved from function minimize() to function truthTable(), where it better serves its purpose with increased transparency. Perhaps the most useful and interesting new feature is the function simplify() which, in addition to its previous name sop(), performs a Boolean minimiza- tion on a SOP / DNF expression in order to find the simplest possible equiv- 7 8 Contents alent. Such expressions are now extensively used when specifying directional expectations, in either traditional way or as conjunctural expectations. To advance the presentation from section 2.4, the point of the graphical user interface is not to replace the command line, but to offer a more accessible way to learn how to use the commands. No graphical user interface, irrespective how user friendly, can replace the complete flexibility of the command line. The variety of available written functions, from the base R and specifically from package QCA, is beyond the possibilities of any standardized graphical (therefore confined) user interface. But there is one thing that makes this user interface special: each and every mouse click on the various options trigger an immediate construction of the corresponding command. The real purpose of the graphical user interface is to demonstrate one possible way to write commands, while there are many others that users are invited to discover. The structure of this book is different from the former user guide. It willof course touch on the same topics and present the same (updated) package, but instead of organizing chapters on the distinction between crisp, multi-value, and fuzzy sets, a better approach is to organize the book on QCA related analyses: calibration, analysis of necessity, analysis of sufficiency, constructing and minimizing a truth table etc. It has grown much more than a guide, but it is also not intended as a complete theoretical material. This is valid for both R related information (chapter 1 being a very short introduction) and QCA related topics as well. There are entire books to