Differential gene expression for single-cell data using pseudo-bulk counts with edgeR

single-cell-pseudobulk-analysis/pseudo-bulk-edger

Author(s)
Diana Chiang Jurado, Pavankumar Videm, Pablo Moreno
version Version
1
last_modification Last updated
Feb 12, 2025
license License
CC-BY-4.0
galaxy-tags Tags
single-cell
pseudobulk

Features
Tutorial
hands_on Pseudobulk Analysis with Decoupler and EdgeR

Workflow Testing
Tests: ✅
Results: Not yet automated
FAIRness purl PURL
https://gxy.io/GTN:W00313
RO-Crate logo with flask Download Workflow RO-Crate Workflowhub cloud with gears logo View on (Dev) WorkflowHub
Launch in Tutorial Mode question
galaxy-download Download
flowchart TD
  0["ℹ️ Input Dataset\nSource AnnData file"];
  style 0 stroke:#2c3143,stroke-width:4px;
  1["ℹ️ Input Parameter\nPseudo-bulk: Fields to merge"];
  style 1 fill:#ded,stroke:#393,stroke-width:4px;
  2["ℹ️ Input Parameter\nGroup by column"];
  style 2 fill:#ded,stroke:#393,stroke-width:4px;
  3["ℹ️ Input Parameter\nSample key column"];
  style 3 fill:#ded,stroke:#393,stroke-width:4px;
  4["ℹ️ Input Parameter\nName Your Raw Counts Layer"];
  style 4 fill:#ded,stroke:#393,stroke-width:4px;
  5["ℹ️ Input Parameter\nFactor fields"];
  style 5 fill:#ded,stroke:#393,stroke-width:4px;
  6["ℹ️ Input Parameter\nFormula"];
  style 6 fill:#ded,stroke:#393,stroke-width:4px;
  7["ℹ️ Input Parameter\nGene symbol column"];
  style 7 fill:#ded,stroke:#393,stroke-width:4px;
  8["Decoupler pseudo-bulk"];
  1 -->|output| 8;
  5 -->|output| 8;
  2 -->|output| 8;
  0 -->|output| 8;
  4 -->|output| 8;
  3 -->|output| 8;
  b28fbf89-5621-459e-9321-6cd0a72261ea["Output\nPseudobulk count matrix"];
  8 --> b28fbf89-5621-459e-9321-6cd0a72261ea;
  style b28fbf89-5621-459e-9321-6cd0a72261ea stroke:#2c3143,stroke-width:4px;
  6e8b4090-3ab7-4158-805a-2d757fd5e0fb["Output\nPseudobulk Plot"];
  8 --> 6e8b4090-3ab7-4158-805a-2d757fd5e0fb;
  style 6e8b4090-3ab7-4158-805a-2d757fd5e0fb stroke:#2c3143,stroke-width:4px;
  93e42181-49b2-47cf-ab73-98373376caf9["Output\nFiltered by expression"];
  8 --> 93e42181-49b2-47cf-ab73-98373376caf9;
  style 93e42181-49b2-47cf-ab73-98373376caf9 stroke:#2c3143,stroke-width:4px;
  9["Sanitize matrix"];
  8 -->|count_matrix| 9;
  10["Sanitize factors"];
  8 -->|samples_metadata| 10;
  11["Remove start, end, width"];
  8 -->|genes_metadata| 11;
  12["Sanitize first factor for leading digits"];
  10 -->|outfile| 12;
  13["Text reformatting"];
  12 -->|outfile| 13;
  14["edgeR"];
  11 -->|output_tabular| 14;
  13 -->|outfile| 14;
  6 -->|output| 14;
  9 -->|outfile| 14;
  12 -->|outfile| 14;
  851ac5bc-9c57-4f36-b469-33a2e8dde894["Output\nTables: DEG"];
  14 --> 851ac5bc-9c57-4f36-b469-33a2e8dde894;
  style 851ac5bc-9c57-4f36-b469-33a2e8dde894 stroke:#2c3143,stroke-width:4px;
  5ad48faa-d0a7-4bb1-b307-7861f540ec29["Output\nReport Results: HTML File"];
  14 --> 5ad48faa-d0a7-4bb1-b307-7861f540ec29;
  style 5ad48faa-d0a7-4bb1-b307-7861f540ec29 stroke:#2c3143,stroke-width:4px;
  15["Get contrast labels"];
  14 -->|outTables| 15;
  16["Select gene symbols, logFC, PValue and FDR"];
  7 -->|output| 16;
  14 -->|outTables| 16;
  647df402-93cb-4f9e-9bde-7afcbcffad5b["Output\nTables for volcano plot"];
  16 --> 647df402-93cb-4f9e-9bde-7afcbcffad5b;
  style 647df402-93cb-4f9e-9bde-7afcbcffad5b stroke:#2c3143,stroke-width:4px;
  17["Replace Text"];
  15 -->|output| 17;
  18["Split contrasts"];
  17 -->|outfile| 18;
  19["Contrast as parameters"];
  18 -->|list_output_txt| 19;
  20["Volcano Plot"];
  16 -->|output_tabular| 20;
  19 -->|text_param| 20;
  02cc64ea-d34d-4081-8a2b-2dc59e102c66["Output\nVolcano Plot on input dataset(s): PDF"];
  20 --> 02cc64ea-d34d-4081-8a2b-2dc59e102c66;
  style 02cc64ea-d34d-4081-8a2b-2dc59e102c66 stroke:#2c3143,stroke-width:4px;

Inputs

Input Label
Input dataset Source AnnData file
Input parameter Pseudo-bulk: Fields to merge
Input parameter Group by column
Input parameter Sample key column
Input parameter Name Your Raw Counts Layer
Input parameter Factor fields
Input parameter Formula
Input parameter Gene symbol column

Outputs

From Output Label
Input parameter Pseudo-bulk: Fields to merge
Input parameter Group by column
Input parameter Sample key column
Input parameter Name Your Raw Counts Layer
Input parameter Factor fields
Input parameter Formula
Input parameter Gene symbol column
toolshed.g2.bx.psu.edu/repos/ebi-gxa/decoupler_pseudobulk/decoupler_pseudobulk/1.4.0+galaxy8 Decoupler pseudo-bulk
toolshed.g2.bx.psu.edu/repos/iuc/edger/edger/3.36.0+galaxy5 edgeR
toolshed.g2.bx.psu.edu/repos/iuc/column_remove_by_header/column_remove_by_header/1.0 Remove columns Select gene symbols, logFC, PValue and FDR
toolshed.g2.bx.psu.edu/repos/iuc/volcanoplot/volcanoplot/0.0.6 Volcano Plot

Tools

Tool Links
param_value_from_file
toolshed.g2.bx.psu.edu/repos/bgruening/split_file_to_collection/split_file_to_collection/0.5.2 View in ToolShed
toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1 View in ToolShed
toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_replace_in_column/9.3+galaxy1 View in ToolShed
toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_replace_in_line/9.3+galaxy1 View in ToolShed
toolshed.g2.bx.psu.edu/repos/ebi-gxa/decoupler_pseudobulk/decoupler_pseudobulk/1.4.0+galaxy8 View in ToolShed
toolshed.g2.bx.psu.edu/repos/iuc/collection_element_identifiers/collection_element_identifiers/0.0.2 View in ToolShed
toolshed.g2.bx.psu.edu/repos/iuc/column_remove_by_header/column_remove_by_header/1.0 View in ToolShed
toolshed.g2.bx.psu.edu/repos/iuc/edger/edger/3.36.0+galaxy5 View in ToolShed
toolshed.g2.bx.psu.edu/repos/iuc/volcanoplot/volcanoplot/0.0.6 View in ToolShed

To use these workflows in Galaxy you can either click the links to download the workflows, or you can right-click and copy the link to the workflow which can be used in the Galaxy form to import workflows.

Importing into Galaxy

Below are the instructions for importing these workflows directly into your Galaxy server of choice to start using them!
Hands On: Importing a workflow
  • Click on Workflow on the top menu bar of Galaxy. You will see a list of all your workflows.
  • Click on galaxy-upload Import at the top-right of the screen
  • Provide your workflow
    • Option 1: Paste the URL of the workflow into the box labelled “Archived Workflow URL”
    • Option 2: Upload the workflow file in the box labelled “Archived Workflow File”
  • Click the Import workflow button

Below is a short video demonstrating how to import a workflow from GitHub using this procedure:

Video: Importing a workflow from URL

Version History

Version Commit Time Comments
3 cc7888368 2024-12-11 14:41:36 Update pseudo-bulk_edgeR.ga
2 95f00fe4e 2024-12-11 14:33:57 Update pseudo-bulk_edgeR.ga
1 45bf38997 2024-12-06 18:55:00 Add pseudobulk-analysis tutorial and associated files

For Admins

Installing the workflow tools

wget https://training.galaxyproject.org/training-material/topics/single-cell/tutorials/pseudobulk-analysis/workflows/pseudo-bulk_edgeR.ga -O workflow.ga
workflow-to-tools -w workflow.ga -o tools.yaml
shed-tools install -g GALAXY -a API_KEY -t tools.yaml
workflow-install -g GALAXY -a API_KEY -w workflow.ga --publish-workflows