Date: 2024-09-11

# Differentially Expressed Heterogeneous Overdispersion Gene Test for Count Data

Qi Xu1*, Arlina Shen2**, Yubai Yuan3*** and Annie Qu4****

1Carnegie Mellon University
2Independent Researcher
3Pennsylvania State University
4University of California, Irvine

*qixu@andrew.cmu.edu
**arlinashen@yahoo.com
***yvy5509@psu.edu
****aqu2@uci.edu

#### 11 September 2024

#### Abstract

This vignette describes the use of DEHOGT, a package for identifying differentially expressed genes using a generalized linear model approach. The package supports quasi-Poisson and negative binomial models to accommodate overdispersion in gene expression count data, integrating factors such as treatment effects, normalization, and significance testing.

#### Package

DEHOGT 0.99.0

# Contents

# 1 Introduction

DEHOGT is designed to handle overdispersion in count data using a generalized linear model (GLM) framework. The package supports quasi-Poisson and negative binomial models, making it useful for differential expression analysis of RNA-seq and other count-based data types.

# 2 Installation

    if (!require("BiocManager", quietly = TRUE)) {
        install.packages("BiocManager")
    }

    BiocManager::install("DEHOGT")

# 3 Example Worklow

In this example, we simulate gene expression data and perform differential expression analysis using the quasi-Poisson model. We also show how to incorporate covariates and normalization factors.

    ## Simulate gene expression data (100 genes, 10 samples)
    data <- matrix(rpois(1000, 10), nrow = 100, ncol = 10)

    ## Randomly assign treatment groups
    treatment <- sample(0:1, 10, replace = TRUE)
    ## Load DEHOGT package
    library(DEHOGT)

    ## Run the function with 2 CPU cores
    result <- dehogt_func(data, treatment, num_cores = 2)

    ## Display results
    head(result$pvals)

    ## [1] 0.61975487 0.64322312 0.07246888 0.25653401 0.56751532 0.68997976

    # Example: Adding covariates and normalization factors
    covariates <- matrix(rnorm(1000), nrow = 100, ncol = 10)
    norm_factors <- rep(1, 10)

    # Run with covariates and normalization factors
    result_cov <- dehogt_func(data, treatment, covariates = covariates, norm_factors = norm_factors, num_cores = 2)

# 4 Session Info

    sessionInfo()

R version 4.4.1 (2024-06-14) Platform: aarch64-apple-darwin20 Running under: macOS Sonoma 14.6.1

Matrix products: default BLAS: /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/lib/libRblas.0.dylib LAPACK: /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/lib/libRlapack.dylib; LAPACK version 3.12.0

locale: [1] C/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

time zone: America/Los_Angeles tzcode source: internal

attached base packages: [1] stats graphics grDevices utils datasets methods base

other attached packages: [1] DEHOGT_0.99.0 BiocStyle_2.32.1

loaded via a namespace (and not attached): [1] digest_0.6.37 R6_2.5.1 codetools_0.2-20
[4] bookdown_0.40 fastmap_1.2.0 doParallel_1.0.17
[7] xfun_0.47 iterators_1.0.14 cachem_1.1.0
[10] parallel_4.4.1 knitr_1.48 htmltools_0.5.8.1
[13] rmarkdown_2.28 lifecycle_1.0.4 cli_3.6.3
[16] foreach_1.5.2 sass_0.4.9 jquerylib_0.1.4
[19] compiler_4.4.1 tools_4.4.1 evaluate_0.24.0
[22] bslib_0.8.0 yaml_2.3.10 BiocManager_1.30.25 [25] jsonlite_1.8.8 rlang_1.1.4 MASS_7.3-61