GithubHelp home page GithubHelp logo

hda1472 / hdanalyzer Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 0.0 46.94 MB

HDAnalyzeR: HDA Internal Package for Streamed-line Proteomics Analysis

Home Page: https://hda1472.github.io/HDAnalyzeR

License: Apache License 2.0

R 99.58% SCSS 0.42%
package proteomics r bioinformatics human-protein-atlas human-disease-blood-atlas olink

hdanalyzer's Introduction

HDAnalyzeR

R-CMD-check Version License

HDAnalyzeR is an R package developed by the Human Disease Blood Atlas project, designed to facilitate proteomics analysis for biomarker selection from blood plasma samples. It is optimized to work with Olink proteomics data, but it can be adapted to other proteomics platforms. In order to use the package without issues the data should have these three necessary columns: DAid with the Sample IDs, Assay with the protein names, and NPX with the protein expression data. The metadata should contain the DAid, Disease, and Sex columns, where the Disease column should contain the different class names (Healthy, Disease, etc.), while in the Sex column the data should be encoded as M (males) and F (females).

HDAnalyzeR offers ready-to-use functions for common proteomics tasks such as protein differential expression analysis, classification models, imputation methods, dimensionality reduction, and data visualization, aiming to streamline workflows and enhance the standardization and efficiency of biomarker discovery in disease research.

Installation

You can install the latest (recommended) or development version of HDAnalyzeR from GitHub:

# Install devtools if you haven't already
install.packages("devtools")

# Install HDAnalyzeR latest version
options(timeout = 1200)  # Set timeout to 20 minutes to avoid timeout errors
devtools::install_github("HDA1472/[email protected]")

# Install HDAnalyzeR development version
options(timeout = 1200)  # Set timeout to 20 minutes to avoid timeout errors
devtools::install_github("HDA1472/HDAnalyzeR")

Cheat Sheet

Usage

The following example showcases how to perform a differential expression analysis. It is one of the many features of HDAnalyzeR. A complete guide is available through package's documentation.

library(HDAnalyzeR)

# Prepare data
wide_data <- widen_data(example_data)

# Run differential expression analysis
de_results <- do_limma(wide_data, example_metadata, case = "AML", control = c("CLL", "MYEL"))

# DE results and volcano plot for AML
de_results$de_results
de_results$volcano_plot

Issues and Support

If you encounter any bugs or you want to recommend new features and changes to existing ones, please open a new issue on our GitHub repository.

Contact

For any questions or further information, please contact us at [email protected].

hdanalyzer's People

Contributors

kantonopoulos avatar

Stargazers

Emil Johansson avatar María Bueno Álvez avatar  avatar

Watchers

Emil Johansson avatar  avatar

hdanalyzer's Issues

devtools::install_github("HDA1472/DA_RPackage") Bad credentials

While trying to install the package when executing devtools::install_github("HDA1472/DA_RPackage"), I got the following error:

Error: Failed to install 'unknown package' from GitHub:
  HTTP error 401.
  Bad credentials

  Rate limit remaining: 59/60
  Rate limit reset at: 2024-08-02 10:55:10 UTC
8. stop(remote_install_error(remotes[[i]], e))
7. value[[3L]](cond)
6. tryCatchOne(expr, names, parentenv, handlers[[1L]])
5. tryCatchList(expr, classes, parentenv, handlers)
4. tryCatch(res[[i]] <- install_remote(remotes[[i]], ...), error = function(e) {stop(remote_install_error(remotes[[i]], e))})
3. install_remotes(remotes, auth_token = auth_token, host = host,
    dependencies = dependencies, upgrade = upgrade, force = force,
    quiet = quiet, build = build, build_opts = build_opts, build_manual = build_manual,
    build_vignettes = build_vignettes, repos = repos, type = type, ...
2. pkgbuild::with_build_tools({ellipsis::check_dots_used(action = getOption("devtools.ellipsis_action", rlang::warn))
    { ...
1. devtools::install_github("HDA1472/DA_RPackage")
Screenshot 2024-08-02 at 11 56 15

How do I solve the bad credentials? I am using the same username, email and password as I normally do.

Mismatch Between AUC and ROC Curves in Multiclass Classification

Description: There appears to be a discrepancy between the AUC scores and the ROC curves plotted using the multiclass classification functions. Specifically, the AUC values do not seem to correspond correctly with the ROC curves generated for each class. This issue may lead to confusion when interpreting the model's performance.

Example Code:

library(HDAnalyzeR)

res <- do_xgboost_multi(example_data,
                 example_metadata,
                 wide = FALSE,
                 palette = "cancers12",
                 cv_sets = 5,
                 grid_size = 5,
                 ncores = 1)

res$auc_barplot
res$roc_curve

In this example BRC should be the lowest AUC in the barplot as it is clearly the smallest Area Under the ROC curves.

roc_curves
barplot

do_umap() Error in `step_umap()`

While following the vignette with the example data executing the function do_umap() I got the following error from this execution:

do_umap(imputed_data, 
        clean_metadata,
        color = "Disease",
        palette = NULL,
        impute = FALSE)
Error in `step_umap()`:
Caused by error in `irlba::irlba()`:
! function 'as_cholmod_sparse' not provided by package 'Matrix'
Backtrace:
  1. HDAnalyzeR::do_umap(...)
 12. uwot::umap(...)
 13. uwot:::uwot(...)
 14. uwot:::spectral_init(V, ndim = n_components, verbose = verbose)
 15. uwot:::irlba_tsvd_normalized_laplacian_init(A, ndim, verbose = FALSE)
 16. uwot:::irlba_spectral_tsvd(L, ndim + 1)
 19. irlba::irlba(L, nv = n, nu = 0, maxit = iters)

Here's also the full traceback:
image
image

Here's my session_info()
image
image

Solved!
I've solved this issue by making sure that I have loaded the umap package (v.0.2.10.0).

Should the umap package be an requirement or can it be solved in another way, or how can this error be avoided for other users?

Error: 'grid_space_filling' is not an exported object from 'namespace:dials'

Ran do_rf_multi() function and received this error. Updated R version to 4.4.1 tidymodels to 1.2.0 and dials to 1.3.0 and it fixed the issue.

HDAnalyzeR::do_rf_multi(auto_data,auto_meta,wide = FALSE,palette = 'pal_auto',exclude_cols = c('Sex','Age')) Joining withby = join_by(DAid)Sets are ready. Multiclassification model fitting is starting... Error: 'grid_space_filling' is not an exported object from 'namespace:dials'

Dependencies not available for HDAnalyzeR package installation

When attempting to install the HDAnalyzeR package, we encounter the following error:

ERROR: dependencies ‘clusterProfiler’, ‘org.Hs.eg.db’, ‘ReactomePA’ are not available for package ‘HDAnalyzeR’

Before the ERROR there is the following warning: Timeout of 60 seconds was reached.

This issue appears to be related to the availability of certain dependencies required by HDAnalyzeR. These dependencies are crucial for the package's functionality but are not being installed automatically, leading to the installation failure.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.