Working with lfproQC package

To attach the package in R studio

library(lfproQC)

To find the best combination of normalization and imputation method for the dataset

yeast <- best_combination(yeast_data, yeast_groups, data_type = "Protein")

PCV values result

yeast$`PCV Result`
#>   Combinations PCV_mean_Group1 PCV_mean_Group2 PCV_median_Group1
#> 1      vsn_knn      0.01563742      0.01671153       0.009085376
#> 2      vsn_lls      0.01557428      0.01691132       0.008789145
#> 3      vsn_svd      0.02029744      0.02096730       0.009800237
#> 4    loess_knn      0.01548703      0.01656221       0.009068990
#> 5    loess_lls      0.01542212      0.01672238       0.008835757
#> 6    loess_svd      0.02010146      0.02074614       0.009800570
#> 7      rlr_knn      0.01531832      0.01635141       0.008656845
#> 8      rlr_lls      0.01526014      0.01654432       0.008350407
#> 9      rlr_svd      0.02000539      0.02062160       0.009589709
#>   PCV_median_Group2 PCV_sd_Group1 PCV_sd_Group2 Overall_PCV_mean
#> 1       0.009162047    0.02188211    0.02789401       0.01609943
#> 2       0.008873765    0.02325404    0.03118426       0.01613564
#> 3       0.009810854    0.02674776    0.03040037       0.02057308
#> 4       0.009096000    0.02185243    0.02791604       0.01594893
#> 5       0.008847887    0.02306504    0.03078569       0.01596888
#> 6       0.009860503    0.02642583    0.02997883       0.02036606
#> 7       0.008705225    0.02188365    0.02779022       0.01576120
#> 8       0.008379560    0.02322101    0.03097194       0.01579786
#> 9       0.009557701    0.02672238    0.03024527       0.02025546
#>   Overall_PCV_median Overall_PCV_sd
#> 1        0.009121854     0.02435171
#> 2        0.008841480     0.02642796
#> 3        0.009759333     0.02817807
#> 4        0.009071945     0.02434108
#> 5        0.008820309     0.02616209
#> 6        0.009817460     0.02781700
#> 7        0.008692614     0.02430915
#> 8        0.008368643     0.02632414
#> 9        0.009589021     0.02809690

PEV values result

yeast$`PEV Result`
#>   Combinations PEV_mean_Group1 PEV_mean_Group2 PEV_median_Group1
#> 1      vsn_knn       0.1750346       0.4416583        0.01844883
#> 2      vsn_lls       0.1605545       0.3526731        0.01771234
#> 3      vsn_svd       0.2332971       1.5140417        0.01844883
#> 4    loess_knn       0.1758276       0.4224673        0.01799075
#> 5    loess_lls       0.1608813       0.3505809        0.01784844
#> 6    loess_svd       0.2319327       1.4575840        0.01799667
#> 7      rlr_knn       0.1753304       0.4426088        0.01867395
#> 8      rlr_lls       0.1607318       0.3615946        0.01817239
#> 9      rlr_svd       0.2333951       1.4919739        0.01896238
#>   PEV_median_Group2 PEV_sd_Group1 PEV_sd_Group2 Overall_PEV_mean
#> 1        0.06687189     0.8601269      1.658083         2.508121
#> 2        0.05193112     0.7656055      1.322830         2.774895
#> 3        0.08735927     1.7173591      4.468394         3.405475
#> 4        0.06261321     0.8740799      1.612586         2.495598
#> 5        0.05119753     0.7713778      1.337569         2.726635
#> 6        0.08130053     1.7090384      4.321391         3.333060
#> 7        0.06143150     0.8653132      1.641726         2.473773
#> 8        0.04608619     0.7694183      1.335029         2.732593
#> 9        0.08425770     1.7178645      4.391970         3.359488
#>   Overall_PEV_median Overall_PEV_sd
#> 1          0.2538019       12.26901
#> 2          0.2390899       14.60724
#> 3          0.3108805       12.40196
#> 4          0.2570070       12.29045
#> 5          0.2412334       14.32552
#> 6          0.3047618       12.13754
#> 7          0.2331567       12.13988
#> 8          0.2153352       14.40870
#> 9          0.2862557       12.22056

PMAD values result

yeast$`PMAD Result`
#>   Combinations PMAD_mean_Group1 PMAD_mean_Group2 PMAD_median_Group1
#> 1      vsn_knn        0.1062125        0.1788447         0.06149434
#> 2      vsn_lls        0.1029024        0.1643297         0.06134860
#> 3      vsn_svd        0.1060137        0.2028000         0.06149434
#> 4    loess_knn        0.1062706        0.1702549         0.05819243
#> 5    loess_lls        0.1027986        0.1585553         0.05762739
#> 6    loess_svd        0.1061461        0.1991313         0.05819243
#> 7      rlr_knn        0.1069145        0.1716799         0.06077546
#> 8      rlr_lls        0.1034537        0.1565315         0.06060190
#> 9      rlr_svd        0.1067671        0.1972949         0.06077546
#>   PMAD_median_Group2 PMAD_sd_Group1 PMAD_sd_Group2 Overall_PMAD_mean
#> 1         0.10204409      0.1572550      0.2600514         0.3275212
#> 2         0.09250152      0.1333701      0.2747744         0.3457268
#> 3         0.10175997      0.1589957      0.3626523         0.2995501
#> 4         0.09767940      0.1602488      0.2531242         0.3264122
#> 5         0.08415886      0.1335858      0.2790020         0.3422907
#> 6         0.09811666      0.1619706      0.3621268         0.2957790
#> 7         0.10079434      0.1577010      0.2555111         0.3125215
#> 8         0.08443967      0.1328456      0.2722582         0.3307206
#> 9         0.09660103      0.1594251      0.3626211         0.2840227
#>   Overall_PMAD_median Overall_PMAD_sd
#> 1           0.1744034       0.6779926
#> 2           0.1702934       0.8159244
#> 3           0.1762055       0.4355489
#> 4           0.1716564       0.6902436
#> 5           0.1674727       0.8078632
#> 6           0.1747291       0.4330612
#> 7           0.1577165       0.6793344
#> 8           0.1531687       0.8108007
#> 9           0.1585464       0.4336766

Best combinations

yeast$`Best combinations`
#>   PCV_best_combination PEV_best_combination PMAD_best_combination
#> 1     rlr_knn, rlr_lls              vsn_lls    loess_lls, rlr_lls

To visualize the normality by different exploratory plots

1. By boxplot

Boxplot_data(yeast$`rlr_knn_data`)  

2. By density plot

Densityplot_data(yeast$`rlr_knn_data`)

3. By correlation heatmap

Corrplot_data(yeast$`rlr_knn_data`)

4. By MDS plot

MDSplot_data(yeast$`rlr_knn_data`)

5. By QQ-plot

QQplot_data(yeast$`rlr_knn_data`)

Differential expression analysis

To Calculate the top-table values

top_table_yeast <- top_table_fn(yeast$`rlr_knn_data`, yeast_groups, 2, 1)

To visualize the different kinds of differentially abundant proteins, such as up-regulated, down-regulated, significant and non-significant proteins

By MA plot

de_yeast_MA <- MAplot_DE_fn(top_table_yeast,-1,1,0.05)
de_yeast_MA$`MA Plot`

By volcano plot

de_yeast_volcano <- volcanoplot_DE_fn (top_table_yeast,-1,1,0.05)
de_yeast_volcano$`Volcano Plot`

Both of the above plots give same result.

To obtain the overall differentially abundant proteins result

de_yeast_MA$`Result `

To find the up-regulated proteins

de_yeast_MA$`Up-regulated`

To find the down-regulated proteins

de_yeast_MA$`Down-regulated`

To find the other significant proteins

de_yeast_MA$`Significant`

To find the non-significant proteins

de_yeast_MA$`Non-significant`

The overall workflow of working with the ‘lfproQC’ package

Session Information

sessionInfo()
#> R version 4.6.0 (2026-04-24)
#> Platform: x86_64-pc-linux-gnu
#> Running under: Ubuntu 24.04.4 LTS
#> 
#> Matrix products: default
#> BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 
#> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.26.so;  LAPACK version 3.12.0
#> 
#> locale:
#>  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
#>  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
#>  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
#>  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
#>  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
#> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
#> 
#> time zone: Etc/UTC
#> tzcode source: system (glibc)
#> 
#> attached base packages:
#> [1] stats     graphics  grDevices utils     datasets  methods   base     
#> 
#> other attached packages:
#> [1] knitr_1.51     lfproQC_1.4.3  rmarkdown_2.31
#> 
#> loaded via a namespace (and not attached):
#>   [1] gridExtra_2.3         rlang_1.2.0           magrittr_2.0.5       
#>   [4] otel_0.2.0            matrixStats_1.5.0     e1071_1.7-17         
#>   [7] compiler_4.6.0        vctrs_0.7.3           reshape2_1.4.5       
#>  [10] stringr_1.6.0         pkgconfig_2.0.3       crayon_1.5.3         
#>  [13] fastmap_1.2.0         backports_1.5.1       labeling_0.4.3       
#>  [16] mlr3_1.6.0            preprocessCore_1.75.0 purrr_1.2.2          
#>  [19] xfun_0.58             cachem_1.1.0          mlr3misc_0.21.0      
#>  [22] jsonlite_2.0.0        reshape_0.8.10        uuid_1.2-2           
#>  [25] cluster_2.1.8.2       parallel_4.6.0        R6_2.6.1             
#>  [28] bslib_0.11.0          stringi_1.8.7         vcd_1.4-13           
#>  [31] RColorBrewer_1.1-3    ranger_0.18.0         limma_3.69.2         
#>  [34] rpart_4.1.27          parallelly_1.47.0     car_3.1-5            
#>  [37] boot_1.3-32           lmtest_0.9-40         jquerylib_0.1.4      
#>  [40] Rcpp_1.1.1-1.1        zoo_1.8-15            base64enc_0.1-6      
#>  [43] Matrix_1.7-5          nnet_7.3-20           tidyselect_1.2.1     
#>  [46] rstudioapi_0.18.0     abind_1.4-8           yaml_2.3.12          
#>  [49] mlr3tuning_1.6.0      codetools_0.2-20      affy_1.91.0          
#>  [52] listenv_0.10.1        lattice_0.22-9        tibble_3.3.1         
#>  [55] plyr_1.8.9            Biobase_2.73.1        withr_3.0.2          
#>  [58] S7_0.2.2              evaluate_1.0.5        foreign_0.8-91       
#>  [61] future_1.70.0         proxy_0.4-29          pillar_1.11.1        
#>  [64] affyio_1.83.0         BiocManager_1.30.27   carData_3.0-6        
#>  [67] checkmate_2.3.4       VIM_7.0.0             plotly_4.12.0        
#>  [70] generics_0.1.4        bbotk_1.10.0          sp_2.2-1             
#>  [73] ggplot2_4.0.3         scales_1.4.0          laeken_0.5.3         
#>  [76] globals_0.19.1        class_7.3-23          glue_1.8.1           
#>  [79] Hmisc_5.2-5           lazyeval_0.2.3        maketools_1.3.2      
#>  [82] tools_4.6.0           mlr3pipelines_0.11.0  robustbase_0.99-7    
#>  [85] sys_3.4.3             data.table_1.18.4     vsn_3.81.0           
#>  [88] buildtools_1.0.0      grid_4.6.0            tidyr_1.3.2          
#>  [91] crosstalk_1.2.2       colorspace_2.1-2      paradox_1.0.1        
#>  [94] htmlTable_2.5.0       palmerpenguins_0.1.1  Formula_1.2-5        
#>  [97] cli_3.6.6             viridisLite_0.4.3     dplyr_1.2.1          
#> [100] pcaMethods_2.5.0      gtable_0.3.6          DEoptimR_1.1-4       
#> [103] sass_0.4.10           digest_0.6.39         BiocGenerics_0.59.6  
#> [106] lgr_0.5.2             htmlwidgets_1.6.4     farver_2.1.2         
#> [109] htmltools_0.5.9       lifecycle_1.0.5       mlr3learners_0.14.0  
#> [112] httr_1.4.8            statmod_1.5.2         MASS_7.3-65