cna

Causal Modeling with Coincidence Analysis

Provides comprehensive functionalities for causal modeling with Coincidence Analysis (CNA), which is a configurational comparative method of causal data analysis that was first introduced in Baumgartner (2009) , and generalized in Baumgartner & Ambuehl (2018) . CNA is related to Qualitative Comparative Analysis (QCA), but contrary to the latter, it is custom-built for uncovering causal structures with multiple outcomes and it builds causal models from the bottom up by gradually combining single factors to complex dependency structures until the requested thresholds of model fit are met. The new functionalities provided by this package version include functions for evaluating and benchmarking the correctness of CNA's output, a function determining whether a solution is an INUS model, a function bringing non-INUS expressions into INUS form, and a function for identifying cyclic models. The package vignette has been updated accordingly.

News

Changes in version 2.1.0 (2018-06-01)

The package now comes with a vignette providing an extensive introduction to the methodological background and the package's usage.

Several functions have a noticeably faster implementation, most notably csf().

cna() has new arguments inus.only and details, and the default value of the argument what has changed from "mac" to "ac".

Various new model fit parameters, which are helpful e.g. in ambiguity reduction, can now be calculated by cna(): exhaustiveness, faithfulness, inus, redundant.

The option spaces is newly available for controlling the spacing in asf and csf.

Data with more than 26 factors can now be processed as well.

Changes in version 2.0.0 (2017-04-11)

Most functions in the package have been fundamentally redesigned or revised. Although we tried to maintain backward compatibility where it was reasonably achievable, code compatible with older versions will not work in many cases.

Three different types of data are now handled: crisp-set, multi-value, and fuzzy-set. Accordingly, several functions have a type argument with possible values "cs", "mv", "fs".

truthTab() has new arguments: type, rm.dup.factors, rm.const.factors and .cases. The argument switch has been removed.

The new convenience functions cstt(), mvtt() and fstt() provide easy access to truthTab().

complexity has been added in the output of msc(), asf() and csf(). coherence has been added in the output of csf().

The new functions allCombs(), makeFuzzy(), selectCases(), selectCases1() and some() facilitate the generation of simulated data for inverse search trials that assess the correctness of models output by cna.