Skip to contents

Limma-voom contrast analysis facade

Limma-voom contrast analysis facade

Details

Encapsulates the pipeline: strategy_limma -> build_model_limma_voom -> ContrastsLimma.

Uses vooma-style precision weights derived from a mean-variance trend, optionally combined with external weights (e.g. peptide/precursor counts).

See also

Other modelling: AnovaExtractor, Contrasts, ContrastsDEqMSFacade, ContrastsDEqMSVoomFacade, ContrastsFirth, ContrastsFirthFacade, ContrastsLMFacade, ContrastsLMImputeFacade, ContrastsLMMissingFacade, ContrastsLimma, ContrastsLimmaFacade, ContrastsLimmaImputeFacade, ContrastsLimmaVoomImputeFacade, ContrastsLimpaFacade, ContrastsLmerFacade, ContrastsMissing, ContrastsModerated, ContrastsModeratedDEqMS, ContrastsPlotter, ContrastsRLMFacade, ContrastsROPECA, ContrastsROPECAFacade, ContrastsTable, INTERNAL_FUNCTIONS_BY_FAMILY, LR_test(), Model, ModelFirth, ModelLimma, StrategyLM, StrategyLimma, StrategyLimpa, StrategyLmer, StrategyLogistf, StrategyRLM, build_contrast_analysis(), build_model(), build_model_glm_peptide(), build_model_glm_protein(), build_model_impute(), build_model_limma(), build_model_limma_impute(), build_model_limma_voom(), build_model_limma_voom_impute(), build_model_limpa(), build_model_logistf(), compute_borrowed_variance(), compute_borrowed_variance_limma(), compute_contrast(), compute_lmer_contrast(), contrasts_fisher_exact(), get_anova_df(), get_complete_model_fit(), get_p_values_pbeta(), group_label(), impute_refit_singular(), isSingular_lm(), linfct_all_possible_contrasts(), linfct_factors_contrasts(), linfct_from_model(), linfct_matrix_contrasts(), merge_contrasts_results(), model_analyse(), model_summary(), moderated_p_deqms(), moderated_p_deqms_long(), moderated_p_limma(), moderated_p_limma_long(), new_lm_imputed(), pivot_model_contrasts_2_Wide(), plot_lmer_peptide_predictions(), sim_build_models_lm(), sim_build_models_lmer(), sim_build_models_logistf(), sim_make_model_lm(), sim_make_model_lmer(), strategy_limma(), strategy_limpa(), strategy_logistf(), summary_ROPECA_median_p.scaled()

Public fields

model

ModelLimma object

contrast

ContrastsLimma object

.lfqdata

stored reference to input LFQData

.contrast_names

names of the requested contrasts

Methods


Method new()

initialize

Usage

ContrastsLimmaVoomFacade$new(
  lfqdata,
  modelstr,
  contrasts,
  weights = lfqdata$config$nr_children,
  span = 0.5,
  plot = FALSE,
  ...
)

Arguments

lfqdata

LFQData object

modelstr

model formula string (e.g. "~ group_")

contrasts

named character vector of contrasts

weights

column name for per-observation weights (default: lfqdata$config$nr_children). Pass NULL for unweighted.

span

lowess smoother span for vooma trend (default 0.5)

plot

logical; if TRUE, plot the mean-variance trend

...

passed to strategy_limma (e.g. trend, robust)


Method get_contrasts()

get contrast results (rows with NA diff are filtered out)

Usage

ContrastsLimmaVoomFacade$get_contrasts(...)

Arguments

...

passed to ContrastsLimma$get_contrasts


Method get_missing()

get protein x contrast pairs that could not be estimated

Usage

ContrastsLimmaVoomFacade$get_missing()


Method get_Plotter()

get ContrastsPlotter

Usage

ContrastsLimmaVoomFacade$get_Plotter(...)

Arguments

...

passed to ContrastsLimma$get_Plotter


Method to_wide()

convert results to wide format

Usage

ContrastsLimmaVoomFacade$to_wide(...)

Arguments

...

passed to ContrastsLimma$to_wide


Method clone()

The objects of this class are cloneable with this method.

Usage

ContrastsLimmaVoomFacade$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

istar <- sim_lfq_data_protein_config()
#> creating sampleName from file_name column
#> completing cases
#> completing cases done
#> setup done
lfqdata <- LFQData$new(istar$data, istar$config)
lfqdata$rename_response("transformedIntensity")
contrasts <- c("A_vs_Ctrl" = "group_A - group_Ctrl")
fa <- ContrastsLimmaVoomFacade$new(lfqdata, "~ group_", contrasts)
#> Warning: Partial NA coefficients for 1 probe(s)
head(fa$get_contrasts())
#> # A tibble: 6 × 14
#>   facade     modelName protein_Id  contrast     diff     FDR std.error statistic
#>   <chr>      <chr>     <chr>       <chr>       <dbl>   <dbl>     <dbl>     <dbl>
#> 1 limma_voom limma     0EfVhX~0087 A_vs_Ctrl -2.62   0.00198     0.482   -5.42  
#> 2 limma_voom limma     7cbcrd~5725 A_vs_Ctrl  2.80   0.0590      0.985    2.84  
#> 3 limma_voom limma     9VUkAq~4703 A_vs_Ctrl  1.67   0.0590      0.565    2.95  
#> 4 limma_voom limma     BEJI92~5282 A_vs_Ctrl  0.424  0.922       1.81     0.234 
#> 5 limma_voom limma     CGzoYe~2147 A_vs_Ctrl -0.598  0.794       1.17    -0.512 
#> 6 limma_voom limma     Fl4JiV~8625 A_vs_Ctrl -0.0494 0.955       0.851   -0.0581
#> # ℹ 6 more variables: p.value <dbl>, sigma <dbl>, df <dbl>, conf.low <dbl>,
#> #   conf.high <dbl>, avgAbd <dbl>
fa$to_wide()
#> # A tibble: 10 × 5
#>    protein_Id diff.A_vs_Ctrl p.value.A_vs_Ctrl FDR.A_vs_Ctrl statistic.A_vs_Ctrl
#>    <chr>               <dbl>             <dbl>         <dbl>               <dbl>
#>  1 0EfVhX~00…        -2.62            0.000220       0.00198             -5.42  
#>  2 7cbcrd~57…         2.80            0.0197         0.0590               2.84  
#>  3 9VUkAq~47…         1.67            0.0148         0.0590               2.95  
#>  4 BEJI92~52…         0.424           0.819          0.922                0.234 
#>  5 CGzoYe~21…        -0.598           0.618          0.794               -0.512 
#>  6 DoWup2~58…        NA              NA             NA                   NA     
#>  7 Fl4JiV~86…        -0.0494          0.955          0.955               -0.0581
#>  8 HvIpHG~90…        -0.809           0.389          0.713               -0.897 
#>  9 JcKVfU~96…         0.642           0.466          0.713                0.754 
#> 10 SGIVBl~57…        -0.494           0.475          0.713               -0.740