Skip to contents

Linear model strategy (R6 class)

Linear model strategy (R6 class)

Details

Encapsulates everything needed to fit per-protein linear models and extract contrasts: the formula, model fitting function, singularity check, contrast computation, ANOVA, and residual statistics.

Public fields

formula

model formula

model_name

name of model

report_columns

columns to report

weights

optional character string naming a column in the data containing per-observation weights, passed to lm.

is_mixed

always FALSE for lm

anova_df

list with anova function and column names

Methods


Method new()

Create a new StrategyLM

Usage

StrategyLM$new(
  modelstr,
  model_name = "Model",
  report_columns = c("statistic", "p.value", "p.value.adjusted", "moderated.p.value",
    "moderated.p.value.adjusted"),
  weights = NULL
)

Arguments

modelstr

model formula string

model_name

name of model

report_columns

columns to report

weights

optional character string naming a column in the data containing per-observation weights


Method model_fun()

Fit lm to one protein's data

Usage

StrategyLM$model_fun(x, pb, get_formula = FALSE)

Arguments

x

data.frame for one protein

pb

optional progress bar

get_formula

if TRUE, return formula instead of fitting


Method isSingular()

Check if model is singular

Usage

StrategyLM$isSingular(model)

Arguments

model

fitted model


Method contrast_fun()

Compute contrasts from fitted model

Usage

StrategyLM$contrast_fun(...)

Arguments

...

passed to my_contrast_V2


Method df_residual()

Get residual degrees of freedom

Usage

StrategyLM$df_residual(model)

Arguments

model

fitted model


Method sigma()

Get residual standard error

Usage

StrategyLM$sigma(model)

Arguments

model

fitted model


Method clone()

The objects of this class are cloneable with this method.

Usage

StrategyLM$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

strat <- StrategyLM$new("Intensity ~ condition", model_name = "parallel design")
strat$model_fun(get_formula = TRUE)
#> Intensity ~ condition
#> <environment: 0x56144933c1e8>
strat$weights
#> NULL