Skip to content

Porting and enhancing the functionality of the Stata package "mfcurve" by Daniel Krähmer to R.

License

Notifications You must be signed in to change notification settings

XAM12/mfcurve_R

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mfcurve: Multi-Factor Curve Analysis in R

Overview

mfcurve is an R package designed for plotting results from multifactorial research designs (i.e. conjoint analyses, choice experiments, factorial survey experiments), replicating and enhancing the functionality of the Stata mfcurve ado file by Daniel Krähmer. The package provides a streamlined workflow for:

  • Preprocessing data to create grouped summaries.
  • Conducting statistical tests to compare group means and assess significance.
  • Generating visualizations to explore differences across groups, including confidence intervals and significance markers.

This package is ideal for researchers and analysts working with factorial survey experiments, conjoint analysis, or other multi-factor designs.

Features

  • Data Preprocessing: Easily group data by multiple factors or predefined group variables.
  • Statistical Testing: Compare group means using t-tests, with flexible options for confidence levels.
  • Visualization: Create publication-ready plots highlighting group differences and significant results.

Installation

To install the package from GitHub, follow these steps:

# Install devtools if not already installed
install.packages("devtools")

# Install mfcurve package from GitHub
devtools::install_github("XAM12/mfcurve_R")

Usage

Here’s a quick guide on how to use mfcurve:

1. Preprocess Data

library(mfcurve)

# Example dataset
data <- data.frame(
  outcome = rnorm(100),
  factor1 = factor(sample(letters[1:3], 100, replace = TRUE)),
  factor2 = factor(sample(letters[4:5], 100, replace = TRUE))
)

# Preprocess data with two factors
preprocessed_data <- mfcurve_preprocessing(data, outcome = "outcome", factors = c("factor1","factor2"))

2. Visualize Results

plot <- mfcurve_plotting(
  group_stats_vis = preprocessed_data$group_stats_vis,
  lower_data      = preprocessed_data$lower_data,
  grand_mean      = preprocessed_data$grand_mean,
  outcome         = "outcome",
  factors         = c("factor1","factor2"),
  level           = preprocessed_data$level
)
print(plot)

Example Plot

Documentation

Detailed documentation for each function is available within R:

?mfcurve
?mfcurve_plotting
?mfcurve_preprocessing

Vignette

For a comprehensive guide on using mfcurve, refer to the vignette:

vignette("mfcurve-intro")

Contributing

Contributions are welcome! If you find bugs or have suggestions, feel free to open an issue or submit a pull request on GitHub.

License

This package is licensed under GNU General Public License v3.0 or later. See the LICENSE on GitHub for more details: https://github.com/XAM12/mfcurve_R/blob/main/LICENSE.md

Contact

For questions or suggestions, please contact:

About

Porting and enhancing the functionality of the Stata package "mfcurve" by Daniel Krähmer to R.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages