Powered by OpenAIRE graph
Found an issue? Give us feedback
ZENODOarrow_drop_down
ZENODO
Software . 2026
License: CC BY
Data sources: Datacite
ZENODO
Software . 2026
License: CC BY
Data sources: Datacite
versions View all 2 versions
addClaim

im-research-yt/TSQCA: v1.3.2: Fiss Core/Peripheral Classification

Authors: im-research-yt;

im-research-yt/TSQCA: v1.3.2: Fiss Core/Peripheral Classification

Abstract

TSQCA 1.3.2Release date: 2026-03-14New FeaturesFiss (2011) Core/Peripheral Condition ClassificationThree new functions implement the core/peripheral distinction introduced by Fiss (2011, Academy of Management Journal), which distinguishes between conditions that are central to a causal configuration and those that merely supplement it:compute_fiss_core(result, conditions) — Augments any sweep result object with core/peripheral classification. For each threshold, it automatically re-runs QCA::minimize() with dir.exp = NULL to obtain the parsimonious solution, then compares it to the already-stored intermediate solution. Conditions appearing in both solutions are classified as core; conditions appearing only in the intermediate solution are classified as peripheral.generate_fiss_chart(result, conditions, symbol_set, language) — Generates a Markdown-formatted cross-threshold configuration chart using four distinct symbols: Symbol (unicode) | Symbol (latex) | Symbol (ascii) | Meaning -- | -- | -- | -- ● | $\bullet$ | O | Core condition present ⊗ | $\otimes$ | X | Core condition absent ⊙ | $\odot$ | o | Peripheral condition present ⊘ | $\oslash$ | x | Peripheral condition absent Why this matters:The term "Core Conditions" in QCA literature (Fiss, 2011) refers to conditions appearing in both parsimonious AND intermediate solutions—a comparison between solution types. This is distinct from terms shared across multiple equivalent solutions of the same type, which are properly called "Essential Prime Implicants" in Boolean algebra terminology.Migration:If you used extract_mode = "core" in previous versions, change to extract_mode = "essential". The output structure is identical; only the names have changed for methodological accuracy.New FeaturesConfiguration Chart GeneratorAdded functions for generating Fiss-style configuration charts (Table 5 format) commonly used in QCA publications.New functions:generate_config_chart() — Generate configuration chart from QCA solution objectconfig_chart_from_paths() — Generate chart from path strings (e.g., "AB~C")config_chart_multi_solutions() — Generate separate charts for multiple solutionsFeatures:Three symbol sets: "unicode" (● / ⊗), "ascii" (O / X), "latex" (\bullet / \otimes)Automatic condition extraction from solution pathsOptional metrics rows (Consistency, Coverage, Unique Coverage)Bilingual labels (English / Japanese)Markdown table output for easy integration with reportsExample:# From QCA solution objectchart <- generate_config_chart(sol, symbol_set = "unicode")cat(chart)# From path stringspaths <- c("A*B*~C", "A*D")chart <- config_chart_from_paths(paths)cat(chart)TSQCA 0.4.1Bug FixesReport Generation ImprovementsFixed empty "Detailed Results" and "Cross-Threshold Comparison" sections for large threshold sweepsAdded threshold limit (27 combinations) for detailed output in reportsWhen threshold combinations exceed 27, detailed per-threshold results are omitted with explanatory messageUsers are directed to access details programmatically via result$detailsAffected functions: generate_report() for dtSweep and ctSweepM resultsTSQCA 0.4.0New FeaturesS3 MethodsAdded S3 class system for all sweep function resultsClass hierarchy: otSweep_result, dtSweep_result, ctSweepS_result, ctSweepM_result inherit from tsqca_resultAdded print() methods for all result typesDisplays analysis overview: outcome, conditions, thresholds sweptShows summary statistics: valid solutions, no solution, multiple solutionsAdded summary() methods for all result typesDisplays analysis parameters and full results tableNotes when multiple solutions existChangesBackward CompatibilityAll existing workflows continue to work unchangedDirect access to $summary, $details, and $params components still worksWhen return_details = FALSE, returns plain data.frame without S3 classTSQCA 0.3.0New FeaturesQCA-Compatible Argument NamesRenamed Yvar to outcome and Xvars to conditions in all sweep functionsFollows QCA package naming conventions for consistencyOld argument names (Yvar, Xvars) are still supported with deprecation warningsNegated Outcome SupportAdded support for negated outcomes using tilde prefix (e.g., outcome = "~Y")Analyzes conditions sufficient for the absence of the outcome (Y < threshold)Follows QCA package's truthTable() convention for negationWorks with all sweep functions: otSweep(), dtSweep(), ctSweepS(), ctSweepM()Enhanced Report Generationgenerate_report() now displays "(negated)" indicator when analyzing negated outcomesSupports both old and new parameter names for backward compatibilityChangesArgument Names (Backward Compatible)Yvar → outcome (recommended)Xvars → conditions (recommended)Using old argument names will trigger a deprecation warning but will continue to workParameter Storage$params now includes:outcome: New argument name (also stores ~Y notation if negated)conditions: New argument namenegate_outcome: Boolean indicating if outcome was negatedMigration Guide# Old syntax (still works, but shows deprecation warning)result <- otSweep(dat, Yvar = "Y", Xvars = c("X1", "X2"), ...)# New syntax (recommended)result <- otSweep(dat, outcome = "Y", conditions = c("X1", "X2"), ...)# Negated outcome (new feature)result <- otSweep(dat, outcome = "~Y", conditions = c("X1", "X2"), ...)TSQCA 0.2.0New FeaturesMultiple Solution HandlingAdded extract_mode parameter to all sweep functions (otSweep(), dtSweep(), ctSweepS(), ctSweepM()) with three options:"first" (default): Returns only the first solution (M1), maintaining backward compatibility"all": Returns all intermediate solutions concatenated (e.g., "M1: AB; M2: AC")"essential": Returns essential prime implicants common to all solutions, plus peripheral and unique termsAdded get_n_solutions() helper function to count the number of intermediate solutionsReport GenerationAdded generate_report() function for automatic markdown report generation with two formats:"full": Comprehensive report including all analysis details, solution formulas, and fit measures"simple": Condensed format designed for journal manuscript supplementary materialsReproducibilityAll sweep functions now return analysis parameters in $params for full reproducibilityParameters include: variable names, thresholds, QCA settings (incl.cut, n.cut, pri.cut, dir.exp, include)ChangesDefault Value UpdatesChanged return_details default from FALSE to TRUE for better integration with generate_report()Changed n.cut default from 2 to 1 to align with QCA package conventionsChanged pri.cut default from 0.5 to 0 to align with QCA package conventionsOutput Structure

  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    0
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
0
Average
Average
Average