Package: cbcTools 0.7.2

cbcTools: Design and Analyze Choice-Based Conjoint Experiments

Design and evaluate choice-based conjoint survey experiments. Generate a variety of survey designs, including random designs, frequency-based designs, and D-optimal designs, as well as "labeled" designs (also known as "alternative-specific designs"), designs with "no choice" options, and designs with dominant alternatives removed. Conveniently inspect and compare designs using a variety of metrics, including design balance, overlap, and D-error, and simulate choice data for a survey design either randomly or according to a utility model defined by user-provided prior parameters. Conduct a power analysis for a given survey design by estimating the same model on different subsets of the data to simulate different sample sizes. Bayesian D-efficient designs using the 'cea' and 'modfed' methods are obtained using the 'idefix' package by Traets et al (2020) <doi:10.18637/jss.v096.i03>. Choice simulation and model estimation in power analyses are handled using the 'logitr' package by Helveston (2023) <doi:10.18637/jss.v105.i10>.

Authors:John Helveston [cre, aut, cph]

cbcTools_0.7.2.tar.gz
cbcTools_0.7.2.zip(r-4.7)cbcTools_0.7.2.zip(r-4.6)cbcTools_0.7.2.zip(r-4.5)
cbcTools_0.7.2.tgz(r-4.6-any)cbcTools_0.7.2.tgz(r-4.5-any)
cbcTools_0.7.2.tar.gz(r-4.7-any)cbcTools_0.7.2.tar.gz(r-4.6-any)
cbcTools_0.7.2.tgz(r-4.6-emscripten)
manual.pdf |manual.html
DESCRIPTION |NEWS
card.svg |card.png
cbcTools/json (API)

# Install 'cbcTools' in R:
install.packages('cbcTools', repos = c('https://jhelvy.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/jhelvy/cbctools/issues

Pkgdown/docs site:https://jhelvy.github.io

On CRAN:

Conda:

cbcconjointd-optimald-optimal-designdesigndesign-of-experimentdesign-of-experimentsdiscrete-choicedoeidefixoptimal-designpoweranalysissawtoothsurvey

7.70 score 11 stars 127 scripts 442 downloads 15 exports 81 dependencies

Last updated from:d38fb35374. Checks:9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64OK158
source / vignettesOK275
linux-release-x86_64OK166
macos-release-arm64OK137
macos-oldrel-arm64OK132
windows-develOK126
windows-releaseOK124
windows-oldrelOK140
wasm-releaseOK158

Exports:cbc_choicescbc_comparecbc_decodecbc_designcbc_encodecbc_inspectcbc_powercbc_priorscbc_profilescbc_restrictcbc_suggest_priorscor_specint_specplot_compare_powerrand_spec

Dependencies:base64encbslibcachemcallrclicommonmarkcpp11data.tabledfidxdigestdplyrfarverfastDummiesfastmapfontawesomeFormulafsgenericsggplot2gluegmmgtablehtmltoolshttpuvidefixisobandjpegjquerylibjsonlitelabelinglaterlatticelifecyclelogitrmagrittrMASSMatrixmemoisemimemiraimvtnormnanonextnloptrotelpillarpkgconfigpngprocessxpromisespsR6randtoolboxrappdirsrbibutilsRColorBrewerRcppRcppArmadilloRcppParallelRdpackrlangrngWELLS7sandwichsassscalesshinyshinyjssourcetoolsstringistringrtableHTMLtibbletidyselecttmvtnormutf8vctrsviridisLitewebshotwithrxtablezoo

Specifying Priors
What Are Priors? | Sources of Prior Information | Basic Prior Specification | Fixed Parameters | Understanding Categorical Variables | Using Named Specifications | Random Parameters | Parameter Correlations | Types of Correlations | Interaction Effects | Interaction Types | No-Choice Priors | Suggested Priors | Parameter Draws for Bayesian Analysis | Common Pitfalls | Mismatched Scales | Wrong Reference Levels | Incompatible Restrictions | Using Priors in Practice

Last update: 2025-11-01
Started: 2025-07-06

Generating Designs
Design Basics | Understanding the Design Structure | ID Columns | Attribute Columns | Converting Encoding | Design Methods | Method Comparison Table | "random" Method | Frequency-Based Methods | D-Optimal Methods | Comparing Designs | Design Features | No-Choice Option | Labeled Designs | Balanced Sampling | Blocking | Dominance Removal | Interactions | Comprehensive Design Inspection | Customizing Optimization | Next Steps

Last update: 2025-10-12
Started: 2025-07-06

Getting Started
The cbcTools Workflow | Step 1: Generate Profiles | Step 2: Specify Priors | Understanding Reference Levels | Step 3: Generate Designs | Step 4: Inspect Design | Step 5: Simulate Choices | Step 6: Assess Power

Last update: 2025-10-12
Started: 2025-07-06

Power Analysis
Understanding Power Analysis | What is Statistical Power? | Why Conduct Power Analysis? | Power vs. Precision | Basic Power Analysis | Parameter Specification Options | Auto-Detection (Recommended) | Specify Dummy-Coded Parameters | When to Use Each Approach | Understanding Power Results | Visualizing Power Curves | Interpreting Results | Mixed Logit Models | Comparing Design Performance | Design Method Comparison | Advanced Analysis | Returning Full Models | Best Practices | Power Analysis Workflow

Last update: 2025-10-12
Started: 2025-07-06

Simulating Choices
Choice Simulation Approaches | Random Choices | Utility-Based Choices | Choice Data Format | Advanced Simulation Options | Designs with No-Choice | Random Parameters (Mixed Logit) | Interaction Effects | Validating Choice Patterns | Overall Choice Frequencies | Respondent Heterogeneity | Design Consistency | Using Consistent Priors | Prior Consistency Warnings | Best Practices | Prior Specification | Validation Steps | Next Steps

Last update: 2025-10-12
Started: 2025-07-06

Variable Encoding
Overview | Basic Encoding Conversion | Creating a Design | Converting to Dummy Coding | Converting to Effects Coding | Converting Back to Standard | Customizing Reference Levels | Setting Custom References | Updating References Without Changing Encoding | Working with No-Choice Options | Use Cases | For Model Estimation | For Data Inspection | For Power Analysis

Last update: 2025-10-12
Started: 2025-10-12

Generating Profiles
Generating all possible profiles | Restricted profiles

Last update: 2025-07-07
Started: 2025-07-06

Computing D-error in Choice Experiments
What is D-error? | Types of D-error | Prior Parameter Assumptions | How cbcTools Chooses D-error Type | Working Example | The Design | Step 1: Encode the Design | Computing $D_p$-error (Fixed Parameters) | Step 2: Compute Choice Probabilities | Step 3: Compute Fisher Information Matrix | Step 4: Compute $D_p$-error | Computing $D_0$-error (No Priors) | Computing $D_B$-error (Random Parameters)

Last update: 2025-07-06
Started: 2025-07-06