--- title: "CauMedi" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{CauMedi} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r, include = FALSE} knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ``` ## Introduction Welcome to the CauMedi vignette! This document provides an overview of the CauMedi package. CauMedi is a causal mediation framework for cell type-specific single-cell data based on joint mediator multilevel models. The framework jointly models overdispersed counts and zero inflation for the mediators. ### Installation To install the package, please use: ```{r} #install.packages("CauMedi") ``` ## Example Usage Run prepare_CauMedi_data first to prepare inputs before running main function. ```{r} library(CauMedi) set.seed(42) n_subj <- 100 n_gene <- 50 gene_ids <- paste0("gene", seq_len(n_gene)) M_mat <- matrix(rgamma(n_subj * n_gene, shape = 2, rate = 1), nrow = n_subj, ncol = n_gene, dimnames = list(paste0("subj", seq_len(n_subj)), gene_ids)) F_mat <- matrix(runif(n_subj * n_gene, min = 0, max = 1), nrow = n_subj, ncol = n_gene, dimnames = list(paste0("subj", seq_len(n_subj)), gene_ids)) Y <- rnorm(n_subj) X <- rbinom(n_subj, 1, 0.5) feature_meta <- data.frame( feature_id = gene_ids, cell_type = "Vasculature_cells", gene = gene_ids, stringsAsFactors = FALSE ) pd <- prep_CauMedi_data(M_mat = M_mat, F_mat = F_mat, feature_meta = feature_meta, Y = Y, X = X) ``` Use outputs from prep_CauMedi_data function as inputs for main function CauMedi. ```{r} res <- CauMedi(data = pd$data, feature_meta = pd$feature_meta) print(res) ```