Introduction¶
olinkWrapper provides a user-friendly interface for performing quick analysis of Olink data using the OlinkAnalyze package. It allows for data upload, parameter customization, visualization of results, and exporting of analysis outputs in comprehensive PDF/HTML reports.
olinkWrapper Features¶
- Data Preview: Data upload, merging, and global preview
- Pre-processing: Normalization, Bridge Selection, LOD handling, Outlier Detection, Manual sample/protein exclusion
- Statistical Tests: Shapiro-Wilk/KS (Normality), t-test, Wilcoxon, ANOVA (with Covariates), Linear Mixed Effects (LME), and Post-hoc modules
- Exploratory Analysis: PCA and UMAP with rich visualization
- Visualization: Boxplot, Distribution plots, LME plots, Pathway Heatmap, QC plot, Heatmap, Volcano plots, and Violin plots.
- GSEA Pathway Enrichment and Pathway Heatmaps
- Linear Regression analysis with NPX values as dependent variable and covariates as independent variables.
- Comprehensive PDF report generation capturing the entire analytical session
Usage¶
Input files¶
- NPX Data file: A CSV file containing the Olink data.
- Variables file: A CSV file containing the variables for the analysis.
- Key file: A CSV file containing the key for the analysis.
Example NPX Data file¶
SampleID,Sample_Type,Index,OlinkID,UniProt,Assay,MissingFreq,Panel,Panel_Lot_Nr,PlateID,QC_Warning,LOD,NPX,Normalization,Assay_Warning,ExploreVersion
1473924355,SAMPLE,1,OID20049,P16860,NPPB,0.156,Cardiometabolic,B23407,WB-3586_PL2_Run239,PASS,-1.7863,-1.797,Intensity,PASS,3.6.1
1472550559,SAMPLE,2,OID20049,P16860,NPPB,0.156,Cardiometabolic,B23407,WB-3586_PL2_Run239,PASS,-1.7863,2.1115,Intensity,PASS,3.6.1
1472532271,SAMPLE,3,OID20049,P16860,NPPB,0.156,Cardiometabolic,B23407,WB-3586_PL2_Run239,PASS,-1.7863,3.1012,Intensity,PASS,3.6.1
2011599093,SAMPLE,4,OID20049,P16860,NPPB,0.156,Cardiometabolic,B23407,WB-3586_PL2_Run239,PASS,-1.7863,1.1946,Intensity,PASS,3.6.1
2011538571,SAMPLE,5,OID20049,P16860,NPPB,0.156,Cardiometabolic,B23407,WB-3586_PL2_Run239,PASS,-1.7863,-1.5487,Intensity,PASS,3.6.1
Example Variables file¶
SUBJID,Treatment,Age,Sex
1,Control,45,Male
2,Treatment,55,Female
3,Control,65,Male
4,Treatment,75,Female
Example Key file¶
SampleID,SUBJID
1473924355,1
1472550559,2
1472532271,3
2011599093,4
2011538571,5
Key file
Using key file is optional but recommended to use as it reduces the computation time and memory usage. The NPX data file is quiet big and if you have large number of variables, it is recommended to use key file.
Demo Data Download
Please download the demo data from the following link to practice with the olinkWrapper app: https://sourceforge.net/projects/olinkwrapper/
Remember: download all three files.
1. Using Docker¶
Requirements: Docker
docker run -p 3838:3838 jd21/shinyolink:latest
2. Using R Locally¶
Requirements: R >= 4.4, plus system dependencies for the PDF compiler.
# from the app/ directory
shiny::runApp("app.R")
olinkWrapper Output¶
- PDF Report: 1. A comprehensive PDF report that includes all selected parameters and results. 2. A separate PDF report for all preprocessing and data filtration steps.
- CSV/Excel files: Downloadable results for each analysis.
- PNG/PDF files: Downloadable plots for each analysis.
For more details about the output files and reports, please refer to the output documentation.
Credits¶
- Main Author/Maintainer: Jyotirmoy Das (@JD2112)
LICENSE¶
GNU General Public License v3.0
CITATION¶
Das, J. (2025). olinkWrappeR (v1.2.1). Zenodo. https://doi.org/10.5281/zenodo.15098644
Acknowledgement¶
Special thanks to the Core Facility, Faculty of Medicine and Health Sciences, Linköping University, Linköping, Sweden and Clinical Genomics Linköping, Science for Life Laboratory, Sweden for their support in building this application. We also thank the SciLifeLab Data Center for hosting the application.
References¶
- Olink Proteomics Official Website: https://www.olink.com/
- Assarsson, E. et al. (2014). "A single-tube, quantitative technique for high-throughput protein analysis." Nature Methods, 11(6), 665–670.
- OlinkAnalyze R Package: https://cran.r-project.org/web/packages/OlinkAnalyze/refman/OlinkAnalyze.html
- OlinkAnalyze Vigenette: https://cran.r-project.org/web/packages/OlinkAnalyze/vignettes/Vignett.html
Developer Guide¶
Version Bump Automation¶
To increment the version in the repository across all needed locations (VERSION, Dockerfile labels, version.R, Rmd templates, and CITATION.cff), use the generic script provided in the root:
./bump_version.sh <version>
# Example: ./bump_version.sh 1.6.0
GitHub Actions Workflow¶
When the VERSION file is updated and pushed to main, the .github/workflows/release.yml GitHub Action triggers automatically:
- Creates an annotated vX.x.x tag mimicking the current VERSION
- Uses mike deploy to build and deploy MkDocs documentation via GitHub Pages