Skip to contents

The model fits a gene's expression counts and its normalized pseudotime into one of the four marginal distributions. This function estimates corresponding parameters and confidence intervals in the corresponding marginal distributions.

Usage

scGTM(
  t,
  y1,
  gene_name = NULL,
  marginal = "ZIP",
  iter_num = 50,
  seed = 123,
  hill_only,
  k_design = NULL,
  Design_X = NULL
)

Arguments

t

A numeric vector of the input normalized pseudotime data of a given gene, length equals the numbers of cells

y1

A vector of integers, representing the input expression counts of a given gene, length equals the numbers of cells

gene_name

A single string vector, indicates the gene name used in the model, default=NULL

marginal

A string of the distribution name. One of Poisson, ZIP, NB, ZINB, and Gaussian. default=ZIP

iter_num

A single integer vector, indicates max number of iteration used in the PSO algorithm that estimates model parameters

seed

A numeric variable of the random seed, affecting parametric fitting of the marginal distribution. default=123

hill_only

A logical vector, determine whether the curve is hill only or not.

k_design

A single positive integer, indicates the number of variables in Design matrix, default=NULL

Design_X

A numerical matrix whose number of rows equals the length of y1, number of columns equals k_design, default=NULL

Value

The log_likelihood cost, estimated parameters, and their confidence intervals of a gene

Author

Shiyu Ma, Lehan Zou

Examples

y1<-floor(runif(100, min = 0, max = 20))
t<-runif(100, min = 0, max = 1)
marginal<-"ZIP"
scGTM(t=t, y1=y1, marginal=marginal)
#> The need of transformation:  FALSE
#> We are estimating gene with marginal ZIP .
#> Error in scGTM(t = t, y1 = y1, marginal = marginal): argument "hill_only" is missing, with no default

data("df")
t<-df$Time
marginal<-"ZIP"
y1<-df$Gene11
scGTM(t=t, y1=y1, marginal=marginal)
#> The need of transformation:  TRUE
#> We are estimating gene with marginal ZIP .
#> Error in scGTM(t = t, y1 = y1, marginal = marginal): argument "hill_only" is missing, with no default

data("df")
t<-df$Time
marginal<-"Gaussian"
y1<-df$Gene1
scGTM(t=t, y1=y1, marginal=marginal)
#> The need of transformation:  FALSE
#> We are estimating gene with marginal Gaussian .
#> Error in scGTM(t = t, y1 = y1, marginal = marginal): argument "hill_only" is missing, with no default