diff --git a/CONTRIBUTORS.yaml b/CONTRIBUTORS.yaml index baf85b926dd48d..fb6c35bbff96e0 100644 --- a/CONTRIBUTORS.yaml +++ b/CONTRIBUTORS.yaml @@ -51,7 +51,7 @@ awspolly: # our real contributors <3 (please add yourself in alphabetical order) - + a-asai: name: Atsushi Asai email: tbudcm7zk@i.softbank.jp @@ -103,7 +103,7 @@ adairama: joined: 2024-12 location: country: SG - + ahmedhamidawan: name: Ahmed Hamid Awan @@ -507,6 +507,10 @@ Camila-goclowski: email: camila.goclowski@gmail.com linkedin: camila-goclowski +carloscheemendonca: + name: Carlos Chee Mendonça + joined: 2025-01 + charitylaw: name: Charity Law joined: 2018-09 @@ -959,9 +963,9 @@ GokceOGUZ: email: gokce_oguz@gis.a-star.edu.sg orcid: 0000-0003-1044-7204 linkedin: gokce-oguz - location: + location: country: SG - + guerler: name: Aysam Guerler joined: 2017-09 @@ -1784,7 +1788,7 @@ nagoue: email: nadia.goue@uca.fr orcid: 0000-0003-2750-1473 joined: 2019-07 - + Najatamk: name: Najat Amoukou email: najatibrahim21@gmail.com @@ -2006,8 +2010,8 @@ paulocilasjr: joined: 2024-09 email: paulocilas.moraislyra@moffitt.org orcid: 0000-0002-4403-6684 - affiliations: - - moffitt + affiliations: + - moffitt twitter: paulocilasjr paulzierep: @@ -2097,8 +2101,8 @@ qchiujunhao: name: Junhao Qiu joined: 2024-02 orcid: 0009-0005-4322-3401 - affiliations: - - moffitt + affiliations: + - moffitt email: junhao.qiu@moffitt.org Quickbeasts51429: @@ -2132,7 +2136,7 @@ r1corre: reid-wagner: name: Reid Wagner - email: wagnerr@umn.edu + email: wagnerr@umn.edu joined: 2024-11 rikeshi: diff --git a/topics/single-cell/images/bulk-deconvolution-evaluate/batch-mode.png b/topics/single-cell/images/bulk-deconvolution-evaluate/batch-mode.png new file mode 100644 index 00000000000000..0571f66d843660 Binary files /dev/null and b/topics/single-cell/images/bulk-deconvolution-evaluate/batch-mode.png differ diff --git a/topics/single-cell/images/bulk-deconvolution-evaluate/pearson.png b/topics/single-cell/images/bulk-deconvolution-evaluate/pearson.png new file mode 100644 index 00000000000000..673bd5651201f7 Binary files /dev/null and b/topics/single-cell/images/bulk-deconvolution-evaluate/pearson.png differ diff --git a/topics/single-cell/images/bulk-deconvolution-evaluate/rmse.png b/topics/single-cell/images/bulk-deconvolution-evaluate/rmse.png new file mode 100644 index 00000000000000..115bf26acfd65f Binary files /dev/null and b/topics/single-cell/images/bulk-deconvolution-evaluate/rmse.png differ diff --git a/topics/single-cell/images/bulk-deconvolution-evaluate/scatterplot-compare.png b/topics/single-cell/images/bulk-deconvolution-evaluate/scatterplot-compare.png new file mode 100644 index 00000000000000..588dee6b273e10 Binary files /dev/null and b/topics/single-cell/images/bulk-deconvolution-evaluate/scatterplot-compare.png differ diff --git a/topics/single-cell/images/bulk-deconvolution-evaluate/scatterplot-music.png b/topics/single-cell/images/bulk-deconvolution-evaluate/scatterplot-music.png new file mode 100644 index 00000000000000..2d8b7eefda8504 Binary files /dev/null and b/topics/single-cell/images/bulk-deconvolution-evaluate/scatterplot-music.png differ diff --git a/topics/single-cell/images/bulk-deconvolution-evaluate/violin-compare.png b/topics/single-cell/images/bulk-deconvolution-evaluate/violin-compare.png new file mode 100644 index 00000000000000..8f0844a66e5956 Binary files /dev/null and b/topics/single-cell/images/bulk-deconvolution-evaluate/violin-compare.png differ diff --git a/topics/single-cell/images/bulk-deconvolution-evaluate/violin-music.png b/topics/single-cell/images/bulk-deconvolution-evaluate/violin-music.png new file mode 100644 index 00000000000000..76d1436ced3d1e Binary files /dev/null and b/topics/single-cell/images/bulk-deconvolution-evaluate/violin-music.png differ diff --git a/topics/single-cell/tutorials/bulk-deconvolution-evaluate/tutorial.md b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/tutorial.md new file mode 100644 index 00000000000000..48e98ceb58ac5d --- /dev/null +++ b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/tutorial.md @@ -0,0 +1,575 @@ +--- +layout: tutorial_hands_on + +title: Evaluating Reference Data for Bulk RNA Deconvolution +subtopic: deconvo +priority: 3 +zenodo_link: 'https://zenodo.org/records/5719228' + +questions: +- How do I evaluate my reference data? +- How do I compare different deconvolution tools? +- What are the best metrics for determining tool accuracy? +objectives: +- Generate psuedo-bulk data from single-cell RNA data +- Process the single-cell and psuedo-bulk data using various deconvolution tools +- Evaluate and visualse the results of the different deconvolution methods +time_estimation: 2H +key_points: +- It is important to validate the accuracy of both deconvolution tools and reference data +- There are various visualisation and quantative methods of analysing results +- Different deconvolution tools have varying accuracy, comparing them against the same reference is a useful test to determine the best tool for your data + +tags: +- transcriptomics + +contributions: + authorship: + - hexhowells + reviewing: + - carloscheemendonca + funding: + - elixir-fair-data + +follow_up_training: + - + type: "internal" + topic_name: single-cell + +--- + +There are various methods to estimate the proportions of cell types in bulk RNA data. Since the actual cell proportions of the data are unknown, how do we know if our tools are producing accurate results? + +In this tutorial we will be using single-cell data with known cell-type proportions in order to create pseudo-bulk RNA data. We will then estimate the cell-type proportions of this pseudo-bulk data using the currently available deconvolution tools within Galaxy. Since we know the true proportion values, we will be able to measure and compare the accuracy of the tools' predictions. + +> +> +> In this tutorial, we will cover: +> +> 1. TOC +> {:toc} +> +{: .agenda} + +# Get the single-cell data + +First we need to create a new history in Galaxy and load in our single-cell data. We are going to use the single-cell dataset from a previous deconvolution tutorial found here: [https://training.galaxyproject.org/training-material/topics/single-cell/tutorials/bulk-music/tutorial.html]({% link topics/single-cell/tutorials/bulk-music/tutorial.md %}). + +> Data upload +> +> 1. Create a new history for this tutorial *"Deconvolution: Evaluating Reference Data"* +> 2. Import the files from [Zenodo](https://zenodo.org/records/5719228) or from +> the shared data library (`GTN - Material` -> `{{ page.topic_name }}` +> -> `{{ page.title }}`): +> +> * Human pancreas single-cell RNA datasets (tag: `#scrna`) +> ``` +> https://zenodo.org/record/5719228/files/EMTABesethealthy.expression.tabular +> https://zenodo.org/record/5719228/files/EMTABesethealthy.phenotype.tabular +> ``` +> +> {% snippet faqs/galaxy/datasets_import_via_link.md %} +> +> {% snippet faqs/galaxy/datasets_import_from_data_library.md %} +> +> 4. Check the datatypes are `tabular` +> +> {% snippet faqs/galaxy/datasets_change_datatype.md datatype="tabular" %} +> +> 5. Add a `#metadata` tag to `EMTABesethealthy.phenotype.tabular` and a `#expression` tag to `EMTABesethealthy.expression.tabular` +> +> {% snippet faqs/galaxy/datasets_add_tag.md %} +> +{: .hands_on} + +## Inspecting the single-cell data + +Before continuing lets quickly inspect our single-cell data. We can find all of the cell types present in the data alongside their proportions by using the count tool to count the occurrence of each cell type category in the metadata file. + +> Get cell counts +> +> 1. {% tool [Count](Count1) %} with the following parameters: +> - {% icon param-file %} *"from dataset"*: `EMTABesethealthy.phenotype.tabular` +> - *"Count occurrences of values in column(s)"*: `Column 5` +> - *"Delimited by"*: `Tab` +> - *"How should the results be sorted?"*: `With the most common value first` +> +> 2. **Rename** {% icon galaxy-pencil %} output `Cell type counts` +> +> {% snippet faqs/galaxy/datasets_rename.md %} +> +{: .hands_on} + +We can see from the output table below, there are various cell types present in the data. Note that many of the cell types have very low proportion values, this should be kept in mind later on as cell types that appear only a hand full of times (or even just once!) in the data may not be very useful and only add noise. + +| Cell Type | Count | +|-------------------------|-------| +| alpha | 443 | +| beta | 171 | +| ductal | 135 | +| acinar | 112 | +| gamma | 75 | +| delta | 59 | +| unclassified endocrine | 29 | +| co-expression | 26 | +| PSC | 23 | +| endothelial | 13 | +| epsilon | 5 | +| mast | 4 | +| unclassified | 1 | +| MHC class II | 1 | + +> Inspecting the single-cell data +> +> 1. How many cells are in the single-cell data? +> 2. How many cell types are present in the data? +> +> > +> > +> > 1. Inspecting the general information of `EMTABesethealthy.expression.tabular` we can see that there are **1,097** cells in the data as there are 1,098 columns (we need to subtract 1 for the header). +> > 2. Looking at the output of the {% tool [Count](Count1) %} tool (or the above table), there are **14** distinct cell types in the data. +> > +> {: .solution} +> +{: .question} + +# Process the single-cell data + +In order to get a good understanding of the accuracy of our deconvolution tools, we are going to run our evaluations multiple times. This approach ensures that a single good or bad evaluation does not disproportionately represent the tool's overall performance. + +However, instead of running all of our tools multiple times for each evaluation (which would be quite time consuming!), we will leverage "batch computation" in Galaxy. By storing our data in collections, any tools or workflows that use those collections will automatically run multiple times (once for each element in the collection). We will now perform some pre-processing of our data to get it into the right format. + +## Transpose expression matrix + +If we inspect the expression data file downloaded earlier, we can see that currently the rows represent genes and columns represent cells. However, this needs to be swapped for the later workflows. To fix this we will transpose the expression matrix. + +> Transpose expression matrix +> +> 1. {% tool [Transpose](toolshed.g2.bx.psu.edu/repos/iuc/datamash_transpose/datamash_transpose/1.8+galaxy1) %} with the following parameters: +> - {% icon param-file %} *"Input tabular dataset"*: `EMTABesethealthy.expression.tabular` +> +> 2. **Rename** {% icon galaxy-pencil %} output `Transposed expression matrix` +> +{: .hands_on} + +## Generate batch mode collections + +For this tutorial we will run the evaluations **20** times, this will both help improve the sample size and allow us to determine the consistency of the tools, whilst being small enough to run in a reasonable amount of time. + +We will now duplicate our single-cell data 20 times and store it in a collection. This will be done for both the expression data and metadata files. + +> Generate collections from data +> +> 1. {% tool [Duplicate file to collection](__DUPLICATE_FILE_TO_COLLECTION__) %} with the following parameters: +> - {% icon param-file %} *"Input Dataset"*: `EMTABesethealthy.phenotype.tabular` +> - *"Size of output collection"*: `20` +> +> 2. **Rename** {% icon galaxy-pencil %} output `Metadata` +> +> 3. {% tool [Duplicate file to collection](__DUPLICATE_FILE_TO_COLLECTION__) %} with the following parameters: +> - {% icon param-file %} *"Input Dataset"*: `Transposed expression matrix` +> - *"Size of output collection"*: `20` +> +> 4. **Rename** {% icon galaxy-pencil %} output `Expression data` +> +{: .hands_on} + + +# Create pseudo-bulk and actual cell proportions + +We are now going to run our first workflow! This workflow will extract a subsample from the data containing 200 random cells. The workflow will then perform two things with this subsample: + +1. Count the cell types and proportions of the data in order to be used as reference later against the predicted proportion values +2. Remove the cell types and convert the single-cell data into pseudo-bulk data to be later inputted into the deconvolution tools. + +The above will be done twice to emulate multiple "subjects". Since the deconvolution tools will be expecting the bulk-RNA data to comprise of at least 2 subjects (each with their own bulk data). For this tutorial our subjects will simply be called **A** and **B**. However, in the real world these subjects could be different patients, tissue samples, diseased/healthy, etc. + +> Different Results +> Note that since we are selecting 20 samples, each containing 200 randomly selected cells. The plots and results presented in this tutorial will differ from your own. There will be some similarities such as certain cells being in higher proportion to others but the exact values with differ! +{: .comment} + +**Remember** since we have a collection of 20 inputs, the output of this workflow will be a collection of 20 elements, each corresponding to the input elements. Each output will have its own random selection of 200 cells. + +> Run pseudo-bulk and actual proportions workflow +> +> 1. **Import the workflow** into Galaxy +> - Copy the URL (e.g. via right-click) of [this workflow]({% link topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-1-create-data.ga %}) or download it to your computer. +> - Import the workflow into Galaxy +> +> 2. Run **Workflow pseudobulk and actual proportions** {% icon workflow %} using the following parameters: +> - {% icon param-collection %} *"Metadata"*: `Metadata` +> - {% icon param-collection %} *"Expression Data"*: `Expression Data` +> +> {% snippet faqs/galaxy/workflows_run.md %} +> 3. Add a tag labelled `#A` to the first "Actual cell proportions" and "Pseudobulk" collections +> +> 4. Add a tag labelled `#B` to the second "Actual cell proportions" and "Pseudobulk" collections +{: .hands_on} + + + +The output of this workflow will be the psuedo-bulk and actual cell proportions for both samples A and B. If you inspect one of the elements in the `Actual Cell Proportions` collection, you should see a table similar to the following: + +| | A_actual | +|-------------------------|------------| +| acinar | 0.090000 | +| alpha | 0.415000 | +| beta | 0.170000 | +| co-expression | 0.050000 | +| delta | 0.070000 | +| ductal | 0.105000 | +| endothelial | 0.015000 | +| gamma | 0.050000 | +| mast | 0.010000 | +| unclassified endocrine | 0.025000 | + +Comparing the above table with the cell-type counts of the original single-cell data, does this look correct? Well the top 3 cell-types with the highest proportion in the single-cell data are: alpha, beta, ductal. Which aligns with the proportion values of the above data! There may be some variance due to the randomly selected cells. Also note that some of the lesser common cell types (like `MHC class II`) aren't present in the above table, again this is due to the 200 randomly selected cells for this specific sample and isn't of concern. + +# Perform deconvolution on the pseudo-bulk data + +Now that we have our pseudo-bulk data alongside the actual proportion values. Our next step is to run deconvolution to get predicted cell-type proportions! Currently, Galaxy contains two tools for performing deconvolution: **MuSiC** and **NNLS**. We will use both of these tools in this tutorial and compare their results together. + +## Generate expression set objects + +First we will need to use the single-cell data to build an expression set object, which will be used in the following workflow to perform deconvolution. + +**Note: We are using the original imported data here, not the transposed data or collections.** + +> Build the Expression Set object +> +> 1. {% tool [Construct Expression Set Object](toolshed.g2.bx.psu.edu/repos/bgruening/music_construct_eset/music_construct_eset/0.1.1+galaxy3) %} with the following parameters: +> - {% icon param-file %} *"Assay Data"*: `EMTABesethealthy.expression.tabular` (Input dataset) +> - {% icon param-file %} *"Phenotype Data"*: `EMTABesethealthy.phenotype.tabular` (Input dataset) +> +> > +> > +> > An ExpressionSet object has many data slots, the principle of which are the experiment data (*exprs*), the phenotype data (*pData*), as well metadata pertaining to experiment information and additional annotations (*fData*). +> {: .comment} +> +{: .hands_on} + +Similar to the expression data, this ExpressionSet object needs to be duplicated 20 times into a collection for later batch processing. + +> Generate ESet collection +> +> 1. {% tool [Duplicate file to collection](__DUPLICATE_FILE_TO_COLLECTION__) %} with the following parameters: +> - {% icon param-file %} *"Input Dataset"*: `RData ESet Object` (output of **Construct Expression Set Object** {% icon tool %}) +> - *"Size of output colection"*: `20` +> +> 2. **Rename** {% icon galaxy-pencil %} output `ESet Object` +> +{: .hands_on} + +## Run the Workflow + +The following workflow will take the two pseudo-bulk samples (A and B), as well as the original single-cell data as reference and output the deconvolution results for both samples and deconvolution methods. Thus producing 4 output collections. The pdf results of the deconvolution tools will also be outputted from the workflow but won't be needed for the tutorial. + +> Run inferring cellular proportions workflow +> +> 1. **Import the workflow** into Galaxy +> - Copy the URL (e.g. via right-click) of [this workflow]({% link topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-2-deconv.ga %}) or download it to your computer. +> - Import the workflow into Galaxy +> +> 2. Run **Workflow inferring cellular proportions** {% icon workflow %} using the following parameters: +> - {% icon param-collection %} *"Pseudobulk - A"*: `Pseudobulk (#A)` +> - {% icon param-collection %} *"Pseudobulk - B"*: `Pseudobulk (#B)` +> - {% icon param-collection %} *"ESet Reference scRNA-seq"*: `ESet Object` +> - *"Cell Types Label from scRNA dataset"*: `cellType` +> - *"Samples Identifier from scRNA dataset"*: `sampleID` +> - *"Cell types to use from scRNA dataset"*:`alpha,beta,ductal,acinar,gamma,delta,unclassified endocrine,co-expression,PSC,endothelial,epsilon,mast,unclassified,MHC class II` +> - {% icon param-collection %} *"Actual - B"*: `Actual cell proportions (#B)` +> - {% icon param-collection %} *"Actual - A"*: `Actual cell proportions (#A)` +> +> {% snippet faqs/galaxy/workflows_run.md %} +{: .hands_on} + + + +# Visualise results + +Now that we have our deconvolution results, the next step is to analyse the predictions and determine how accurate our tools are given our reference data. Since our pseudo-subjects **A** and **B** come from the same data, there isn't much point inspecting them both. So for the rest of the tutorial we will just focus our analysis on subject **A**. + +In order to determine if our tools have produced accurate results, we will create various plots and compute different metrics to visualise and quantify the outputs of our tools. + +## Pre-process the output results + +Before visualising or inspecting the outputs of the deconvolution tools, we first need to perform some pre-processing. Up until now we have been working with collections in order to perform our evaluations multiple times in parallel. However, for analysing our data, collections will be a bit messy and are no longer needed. The following workflow will combine all the collections of the MuSiC and NNLS outputs into two tables: + +1. A results table presenting the predicted and actual proportion values of each cell-type of each subsample +2. An error table showing the difference between the actual and predicted values. Which will be needed for a later plot. + +> Run visualisation pre-processing workflow +> +> 1. **Import the workflow** into Galaxy +> - Copy the URL (e.g. via right-click) of [this workflow]({% link topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-3-process.ga %}) or download it to your computer. +> - Import the workflow into Galaxy +> +> 2. Run **Workflow preprocess visualisations** {% icon workflow %} using the following parameters: +> - {% icon param-collection %} *"Cell Proportions"*: `A - Music Results` +> +> 3. Run **Workflow preprocess visualisations** {% icon workflow %} using the following parameters: +> - {% icon param-collection %} *"Cell Proportions"*: `B - NNLS Results` +> +> {% snippet faqs/galaxy/workflows_run.md %} +{: .hands_on} + + + +The following table shows a snippet of the `Results Table` for the MuSiC tool. A header has been added for better reading but has been omitted in the workflow output as it will interfere with the visualisation tools. + +| Cell Type | Actual Proportion | Predicted Proportion | +|----------------|---------------------|------------------------| +| acinar | 0.090000 | 0.0814442584577275 | +| alpha | 0.415000 | 0.427718807911522 | +| beta | 0.170000 | 0.256954867012044 | +| co-expression | 0.050000 | 0 | +| delta | 0.070000 | 0.0929840465107452 | +| ... | ... | ... | + +Already at first glance we can see some interesting results! Firstly we can see that the tool is able to make predictions close to the actual values such as with `acinar, alpha, delta`. We also see the tool failing to make any type of prediction for `co-expression` cells with a predicted proportion value of 0. This however isn't a compete surprise since `co-expression` cells are of small proportion in the bulk and reference data. + +But this is only a small sample of the results. Lets create some visualisations to see the whole picture! + +## Plot scatter plots of the results + +The first type of visualisation we will do is a scatter plot. This plot will compare the actual and predicted proportion values for each cell across each subsample. We will also colour each point on the plot to indicate which cell type it belongs to. Let's do that now for both the MuSiC and NNLS results. + +{% snippet faqs/galaxy/tools_rerun.md %} + +> Plot the actual and inferred data +> +> 1. {% tool [Scatterplot with ggplot2](toolshed.g2.bx.psu.edu/repos/iuc/ggplot2_point/ggplot2_point/3.4.0+galaxy1) %} with the following parameters: +> - {% icon param-file %} *"Input in tabular format"*: `Results Table (Music)` +> - *"Column to plot on x-axis"*: `2` +> - *"Column to plot on y-axis"*: `3` +> - *"Plot title"*: `Correlation between inferred and actual cell-type proportions` +> - *"Label for x axis"*: `Actual proportions` +> - *"Label for y axis"*: `Inferred proportions` +> - In *"Advanced options"*: +> - *"Plotting multiple groups"*: `Plot multiple groups of data on one plot` +> - *"column differentiating the different groups"*: `1` +> - *"Color schemes to differentiate your groups"*: `Paired - predefined color pallete (discrete, max=12 colors)` +> - *"Reverse color scheme"*: `Default order of color scheme` +> - In *"Output options"*: +> - *"width of output"*: `6.0` +> - *"height of output"*: `4.0` +> +> 2. **Rename** {% icon galaxy-pencil %} output `Scatter plot - Music` +> +> 3. Add a `#plot` tag to `Scatter plot - Music` +> +> 4. {% tool [Scatterplot with ggplot2](toolshed.g2.bx.psu.edu/repos/iuc/ggplot2_point/ggplot2_point/3.4.0+galaxy1) %} with the following parameters: +> - {% icon param-file %} *"Input in tabular format"*: `Results Table (NNLS)` +> - *"Column to plot on x-axis"*: `2` +> - *"Column to plot on y-axis"*: `3` +> - *"Plot title"*: `Correlation between inferred and actual cell-type proportions` +> - *"Label for x axis"*: `Actual proportions` +> - *"Label for y axis"*: `Inferred proportions` +> - In *"Advanced options"*: +> - *"Plotting multiple groups"*: `Plot multiple groups of data on one plot` +> - *"column differentiating the different groups"*: `1` +> - *"Color schemes to differentiate your groups"*: `Paired - predefined color pallete (discrete, max=12 colors)` +> - *"Reverse color scheme"*: `Default order of color scheme` +> - In *"Output options"*: +> - *"width of output"*: `6.0` +> - *"height of output"*: `4.0` +> +> 5. **Rename** {% icon galaxy-pencil %} output `Scatter plot - NNLS` +> +> 6. Add a `#plot` tag to `Scatter plot - NNLS` +> +{: .hands_on} + +The output of this tool should produce two scatter plots that looks like the image below. Each point on the plot represents a cell-type for a specific subsample, so there should be 20 points of each colour (one for each subsample created earlier). Since we are comparing the actual and inferred proportions, the ideal scatter plot would have all of the points be at the `y=x` line. The further the deviations are from this ideal line, the less accurate the tool is. We can also use this plot to determine if the tool is under or over predicting proportion values for each cell-type, or if the tool is struggling to predict certain cell types. + +![Scatter plot MuSiC](../../images/bulk-deconvolution-evaluate/scatterplot-music.png "Scatter plot of Music results") + +> Interpreting the Scatter Plots +> +> 1. Which method has the most accurate results? +> 2. Which cell type has the biggest proportion in the dataset? +> 3. Do either of the tools struggle with any cell types? +> +> {% snippet faqs/galaxy/features_scratchbook.md datatype="tabular" %} +> +> > +> > +> > ![Scatter plot comparison](../../images/bulk-deconvolution-evaluate/scatterplot-compare.png "Scatter plot comparison between Music and NNLS") +> > +> > 1. Comparing scatter plots, the MuSiC tool has the most accurate results since the points fall closer onto the x=y line +> > 2. Both scatter plots show `alpha` cells having the highest proportion by a large margin +> > 3. The MuSiC tool seems to handle all cell types well. However, NNLS appears to struggle predicting the proportions of beta cells, with many of the samples being predicted as having a proportion of 0 +> > +> {: .solution} +> +{: .question} + + +## Plot violin plots of the errors + +Next we will plot the distribution of errors between the predicted and actual cellular proportions for a select number of cell types. We could plot all cell types in the output, however too many will cause the visualisations to be messy and difficult to interpret. + +We can use the cell-type counts we computed at the beginning of the tutorial to determine the best cell types to use. We will use the top 5 most abundant cell types in the single-cell data being: `alpha, beta, gamma, ductal, acinar`. Before plotting we will extract only these cell types from our table of errors. + +{% snippet faqs/galaxy/tools_rerun.md %} + +> Extract Cell Types +> +> 1. {% tool [Advanced Cut](toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy2) %} with the following parameters: +> - {% icon param-file %} *"File to cut"*: `Error Table (Music)` +> - *"Operation"*: `Keep` +> - *"Cut by"*: `fields` +> - *"Delimited by"*: `Tab` +> - *"Is there a header for the data's columns ?"*: `Yes` +> - *"List of Fields"*: `Select the columns containing: alpha, beta, gamma, ductal, acinar` +> +> 2. **Rename** {% icon galaxy-pencil %} output `Music Errors` +> +> 3. {% tool [Advanced Cut](toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy2) %} with the following parameters: +> - {% icon param-file %} *"File to cut"*: `Error Table (NNLS)` +> - *"Operation"*: `Keep` +> - *"Cut by"*: `fields` +> - *"Delimited by"*: `Tab` +> - *"Is there a header for the data's columns ?"*: `Yes` +> - *"List of Fields"*: `Select the columns containing: alpha, beta, gamma, ductal, acinar` +> +> 4. **Rename** {% icon galaxy-pencil %} output `NNLS Errors` +> +{: .hands_on} + +Now we have our table of errors consisting of only the top 5 cell-types, we can plot the violin plots. + +{% snippet faqs/galaxy/tools_rerun.md %} + +> Plot violin plots +> +> 1. {% tool [Violin plot w ggplot2](toolshed.g2.bx.psu.edu/repos/iuc/ggplot2_violin/ggplot2_violin/3.4.0+galaxy1) %} with the following parameters: +> - {% icon param-file %} *"Input in tabular format"*: `Music Errors` +> - *"Plot title"*: `Error Distribution` +> - *"Label for x axis"*: `Cell Type` +> - *"Label for y axis"*: `Difference Error` +> - In *"Advanced Options"*: +> - *"Violin border options"*: `Purple` +> - In *"Output Options"*: +> - *"width of output"*: `3.0` +> - *"height of output"*: `2.0` +> +> 2. **Rename** {% icon galaxy-pencil %} output `Violin Plot - Music` +> +> 3. Add a `#plot` tag to `Violin Plot - Music` +> +> 4. {% tool [Violin plot w ggplot2](toolshed.g2.bx.psu.edu/repos/iuc/ggplot2_violin/ggplot2_violin/3.4.0+galaxy1) %} with the following parameters: +> - {% icon param-file %} *"Input in tabular format"*: `NNLS Errors` +> - *"Plot title"*: `Error Distribution` +> - *"Label for x axis"*: `Cell Type` +> - *"Label for y axis"*: `Difference Error` +> - In *"Advanced Options"*: +> - *"Violin border options"*: `Purple` +> - In *"Output Options"*: +> - *"width of output"*: `3.0` +> - *"height of output"*: `2.0` +> +> 5. **Rename** {% icon galaxy-pencil %} output `Violin Plot - NNLS` +> +> 6. Add a `#plot` tag to `Violin Plot - NNLS` +> +{: .hands_on} + +The output of this tool will be two violin plots that will look similar to the below image. Here we can see the distribution of errors for each cell type. Since we are using normal errors and not absolute or squared errors, we are also able to see whether the tool has under or over estimated the cell type. An ideal plot would have all the violin plots being short in height and close to 0 indicating that the estimated and actual values are close together (resulting in an error close to 0). + +![Violin plot MuSiC](../../images/bulk-deconvolution-evaluate/violin-music.png "Violin plot of Music results") + +> Interpreting the Violin Plots +> +> 1. Which method has the least errors? +> 2. Which method is the most balanced when to over and under estimating proportions? +> 3. Which is the most overestimated cell type in NNLS? +> +> {% snippet faqs/galaxy/features_scratchbook.md datatype="tabular" %} +> +> > +> > +> > ![Scatter plot comparison](../../images/bulk-deconvolution-evaluate/violin-compare.png "Scatter plot comparison between Music and NNLS") +> > +> > 1. Comparing the two violin plots, MuSiC has the better error results, with more samples closer to zero. Inspecting the y-axis of the plots also show that the MuSiC errors span a smaller range compared to NNLS. +> > 2. MuSiC can be seen as having the most balanced results with the bulk of the estimates being around 0. Whereas the NNLS results show large amounts of both overestimation and underestimation of various cell types. +> > 3. From the NNLS violin plot it can be seen that ductal cells are greatly overestimated. +> > +> {: .solution} +> +{: .question} + + +# Compute accuracy metrics + +Visualisations are a great tool for getting an intuitive overview of the data. However, some of the interpretations from visualisations can be subjective. Having quantitative results alongside visualisations can offer concrete and precise values about the data that can more easily be compared. We will use two different quantitative metrics in this tutorial; Pearson correlation and RMSE. + +## Pearson Correlation + +The Pearson correlation coefficient is a statistical value that represents the direction and correlation between two variables, the value of this metric ranges between -1 and 1, where: + +- -1 = negative correlation +- 0 = no correlation +- 1 = positive correlation + +The equation for calculating the Pearson correlation can be seen below, the workflow to compute this metric breaks down this formula into smaller steps. + +![Pearson Correlation Equation](../../images/bulk-deconvolution-evaluate/pearson.png "Pearson Correlation Equation") + +Where +- `x` = actual proportion values +- `x̄` = mean of actual proportion values +- `y` = predicted proportion values +- `ȳ` = mean of predicted proportion values + +## Root Mean Squared Error (RMSE) + +Root Mean Squared Error or RMSE is a common metric for measuring a tools prediction error. This metric calculates the average error between the predicted and actual values for each prediction then takes the mean and square root of the error to produce a final value. Lower RMSE values (close to 0) indicate accurate predictions similar to the actual value, as the value increases the accuracy score worsens. + +The equation for calculating this metric is seen below, the implementation of this calculation is in the workflow alongside the Pearson correlation. + +![Root Mean Squared Error Equation](../../images/bulk-deconvolution-evaluate/rmse.png "Root Mean Squared Error Equation") + +Where +- `n` = number of samples +- `y` = actual proportion +- `ŷ` = predicted proportion + + +## Compute metrics + +With a basic understanding of some useful metrics, we will now compute these to get quantitative values alongside our visualisation results. The following workflow needs to be run for both the MuSiC and NNLS results table. + +> Run metrics workflow +> +> 1. **Import the workflow** into Galaxy +> - Copy the URL (e.g. via right-click) of [this workflow]({% link topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-4-metrics.ga %}) or download it to your computer. +> - Import the workflow into Galaxy +> +> 2. Run **Workflow compute metrics** {% icon workflow %} using the following parameters: +> - {% icon param-collection %} *"Cell Proportions"*: `Results Table (Music)` +> +> 3. Run **Workflow compute metrics** {% icon workflow %} using the following parameters: +> - {% icon param-collection %} *"Cell Proportions"*: `Results Table (NNLS)` +> +> {% snippet faqs/galaxy/workflows_run.md %} +{: .hands_on} + + + +After running the workflow on both the MuSiC and NNLS results we should have the Pearson and RMSE metrics for both tools in various outputs. Below combines these metrics into a single summary table. + +| Tool | Pearson Correlation | RMSE | +|-------|---------------------|-------| +| MuSiC | 0.982 | 0.022 | +| NNLS | 0.778 | 0.678 | + +From the table we can now see concrete values representing the error and correlation between the predictions and actual proportion values. We can see from the table that the MuSiC tool has a much better accuracy with a higher correlation score and lower error compared to NNLS. + +The conclusions to draw from this analysis, is that our reference data is effective for use in deconvolution analysis since both tools were able to have high accuracy and low error scores. We also determined that (for at least this data) the MuSiC tool was the more effective/accurate tool and thus would likely be the more trustworthy when performing deconvolution with this single-cell reference data. + +# Conclusion + +{% icon congratulations %} Congratulations! You made it to the end of the tutorial! + +In this tutorial we took some single-cell data with known cell-type proportions, subsampled the data, and converted them to pseudo-bulk data. We then used this pseudo-bulk data to perform deconvolution using the two tools available in Galaxy: MuSiC and NNLS. Using the known cell-type proportions we were able to analyse the predicted proportions to the ground truth in order to determine if the reference data can be used and which tool is the most effective. We used various visualisation and statistical techniques to analyse and quantify the tools accuracy, reliability, and error. diff --git a/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-1-create-data.ga b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-1-create-data.ga new file mode 100644 index 00000000000000..269c1c39464a57 --- /dev/null +++ b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-1-create-data.ga @@ -0,0 +1,2496 @@ +{ + "a_galaxy_workflow": "true", + "annotation": "", + "comments": [ + { + "child_steps": [ + 0, + 1 + ], + "color": "green", + "data": { + "title": "Awk code" + }, + "id": 0, + "position": [ + 62.4, + 0 + ], + "size": [ + 240.8, + 242.7 + ], + "type": "frame" + }, + { + "child_steps": [ + 7 + ], + "color": "turquoise", + "data": { + "title": "Sample B" + }, + "id": 4, + "position": [ + 458, + 425.79999999999995 + ], + "size": [ + 240, + 315.1 + ], + "type": "frame" + }, + { + "child_steps": [ + 5, + 4 + ], + "color": "green", + "data": { + "title": "Awk code" + }, + "id": 3, + "position": [ + 76.5, + 537.8 + ], + "size": [ + 240.1, + 242.6 + ], + "type": "frame" + }, + { + "child_steps": [ + 6 + ], + "color": "turquoise", + "data": { + "title": "Sample A" + }, + "id": 2, + "position": [ + 457.3, + 67.9 + ], + "size": [ + 240, + 315.1 + ], + "type": "frame" + }, + { + "child_steps": [ + 3, + 2 + ], + "color": "orange", + "data": { + "title": "Single-cell data" + }, + "id": 1, + "position": [ + 0, + 279.5 + ], + "size": [ + 242.3, + 216.9 + ], + "type": "frame" + } + ], + "creator": [ + { + "class": "Person", + "identifier": "0009-0008-9422-6380", + "name": "Morgan Howells" + } + ], + "format-version": "0.1", + "license": "MIT", + "name": "Music Stage 1 - Create pseudobulk and actual proportions", + "report": { + "markdown": "\n# Workflow Execution Report\n\n## Workflow Inputs\n```galaxy\ninvocation_inputs()\n```\n\n## Workflow Outputs\n```galaxy\ninvocation_outputs()\n```\n\n## Workflow\n```galaxy\nworkflow_display()\n```\n" + }, + "steps": { + "0": { + "annotation": "BEGIN { print \"A_actual\\tcell_type\" } { print $0 }", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"A_actual\\tcell_type\" } { print $0 }", + "name": "Awk- actual header (A)" + } + ], + "label": "Awk- actual header (A)", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 81.76960779700313, + "top": 40.05556112702788 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "2335d8fd-b2ac-443c-8531-1ea234861e2b", + "when": null, + "workflow_outputs": [] + }, + "1": { + "annotation": "BEGIN { print \"0\\tA_infer\\t0\" } NR > 1 {print $0 }", + "content_id": null, + "errors": null, + "id": 1, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"0\\tA_infer\\t0\" } NR > 1 {print $0 }", + "name": "Awk - infer header (A)" + } + ], + "label": "Awk - infer header (A)", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 82.40076293997843, + "top": 140.9180607120134 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "23226507-712c-4862-9c56-875678cd8b7f", + "when": null, + "workflow_outputs": [] + }, + "2": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 2, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Metadata" + } + ], + "label": "Metadata", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 16.89239501953125, + "top": 318.78472900390625 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "21a22abc-cb3b-4380-9620-6d6b2c8c9741", + "when": null, + "workflow_outputs": [] + }, + "3": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 3, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Expression Data" + } + ], + "label": "Expression Data", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 16.111175537109375, + "top": 404.1146545410156 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "0e38ff28-5d26-4ec5-9d9b-82bf0d7ead45", + "when": null, + "workflow_outputs": [] + }, + "4": { + "annotation": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "content_id": null, + "errors": null, + "id": 4, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "name": "Awk - actual header (B)" + } + ], + "label": "Awk - actual header (B)", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 96.66665551715379, + "top": 576.3528396596698 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "2aca4662-e1a9-4c8e-b15d-e0d47aa6f5ed", + "when": null, + "workflow_outputs": [] + }, + "5": { + "annotation": "BEGIN { print \"0\\tB_infer\\t0\" } NR > 1 {print $0 }", + "content_id": null, + "errors": null, + "id": 5, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"0\\tB_infer\\t0\" } NR > 1 {print $0 }", + "name": "Awk - infer header (B)" + } + ], + "label": "Awk - infer header (B)", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 96.5671753755194, + "top": 678.5293255543155 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "271ce13c-da42-421c-bfb3-c7bef3598f7c", + "when": null, + "workflow_outputs": [] + }, + "6": { + "annotation": "", + "id": 6, + "input_connections": { + "Actual Header Awk": { + "id": 0, + "input_subworkflow_step_id": 2, + "output_name": "output" + }, + "Expression Data": { + "id": 3, + "input_subworkflow_step_id": 1, + "output_name": "output" + }, + "Infer Header Awk": { + "id": 1, + "input_subworkflow_step_id": 3, + "output_name": "output" + }, + "Metadata": { + "id": 2, + "input_subworkflow_step_id": 0, + "output_name": "output" + } + }, + "inputs": [], + "label": null, + "name": "(Collections Test) Create pseudobulk and actual proportions (child)", + "outputs": [], + "position": { + "left": 480.295166015625, + "top": 100.50347900390625 + }, + "subworkflow": { + "a_galaxy_workflow": "true", + "annotation": "", + "comments": [ + { + "child_steps": [ + 4, + 1, + 0 + ], + "color": "turquoise", + "data": { + "title": "Single-cell data" + }, + "id": 0, + "position": [ + 0, + 42.9 + ], + "size": [ + 496.2, + 261.3 + ], + "type": "frame" + }, + { + "child_steps": [ + 5, + 7, + 9, + 11, + 13, + 2 + ], + "color": "green", + "data": { + "title": "Generate actual proportion values" + }, + "id": 1, + "position": [ + 550.7, + 0 + ], + "size": [ + 1291.6, + 273.1 + ], + "type": "frame" + }, + { + "child_steps": [ + 10, + 12, + 14 + ], + "color": "pink", + "data": { + "title": "Merge duplicate genes by ENSEMBL ID" + }, + "id": 2, + "position": [ + 1053.7, + 506.6 + ], + "size": [ + 715.7, + 174.5 + ], + "type": "frame" + }, + { + "child_steps": [ + 17, + 3 + ], + "color": "yellow", + "data": { + "title": "Rename header" + }, + "id": 3, + "position": [ + 2058.5, + 594.9 + ], + "size": [ + 484.8, + 204.3 + ], + "type": "frame" + }, + { + "child_steps": [ + 18, + 19, + 20 + ], + "color": "orange", + "data": { + "title": "Psuedobulk data" + }, + "id": 4, + "position": [ + 2602.1, + 657.2 + ], + "size": [ + 745, + 199.8 + ], + "type": "frame" + } + ], + "format-version": "0.1", + "name": "(Collections Test) Create pseudobulk and actual proportions (child)", + "report": { + "markdown": "\n# Workflow Execution Report\n\n## Workflow Inputs\n```galaxy\ninvocation_inputs()\n```\n\n## Workflow Outputs\n```galaxy\ninvocation_outputs()\n```\n\n## Workflow\n```galaxy\nworkflow_display()\n```\n" + }, + "steps": { + "0": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Metadata" + } + ], + "label": "Metadata", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 28.993999977029414, + "top": 92.24134730974882 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "48e5a9cd-306a-4da0-9ecc-66bbeb59220d", + "when": null, + "workflow_outputs": [] + }, + "1": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 1, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Expression Data" + } + ], + "label": "Expression Data", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 33.91038163233047, + "top": 189.82181514530714 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "7d15eb59-83ce-439b-96e4-b0bafbefb3fe", + "when": null, + "workflow_outputs": [] + }, + "2": { + "annotation": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "content_id": null, + "errors": null, + "id": 2, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "name": "Actual Header Awk" + } + ], + "label": "Actual Header Awk", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 825.5208226578288, + "top": 170.56951974715125 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "5fc4d4b4-fff9-400f-b376-5c0cca159507", + "when": null, + "workflow_outputs": [ + { + "label": null, + "output_name": "output", + "uuid": "858f189d-f98b-47ac-97f3-29faebc2353c" + } + ] + }, + "3": { + "annotation": "BEGIN { print \"0\\tB_infer\\t0\" }\nNR > 1 {print $0 }", + "content_id": null, + "errors": null, + "id": 3, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"0\\tB_infer\\t0\" }\nNR > 1 {print $0 }", + "name": "Infer Header Awk" + } + ], + "label": "Infer Header Awk", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 2078.524235261645, + "top": 665.0596269116171 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "cdb4b722-439f-472b-98cf-803832f2fcee", + "when": null, + "workflow_outputs": [ + { + "label": null, + "output_name": "output", + "uuid": "8b5b425d-3da1-446c-a213-71edd5b8b63f" + } + ] + }, + "4": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 4, + "input_connections": { + "singtabop|input": { + "id": 1, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Create subsample", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 276.2314268692556, + "top": 171.05783913974653 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"custom\", \"__current_case__\": 3, \"fulltable_custom_expr\": \"table.sample(200)\"}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "e1761737-6c26-4e4c-928f-5fd333878831", + "when": null, + "workflow_outputs": [] + }, + "5": { + "annotation": "", + "content_id": "join1", + "errors": null, + "id": 5, + "input_connections": { + "input1": { + "id": 0, + "output_name": "output" + }, + "input2": { + "id": 4, + "output_name": "table" + } + }, + "inputs": [], + "label": "Add metadata", + "name": "Join two Datasets", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 570.7118184308304, + "top": 39.207351358363134 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "join1", + "tool_state": "{\"field1\": \"1\", \"field2\": \"1\", \"fill_empty_columns\": {\"fill_empty_columns_switch\": \"no_fill\", \"__current_case__\": 0}, \"header\": \"\", \"input1\": {\"__class__\": \"ConnectedValue\"}, \"input2\": {\"__class__\": \"ConnectedValue\"}, \"partial\": \"\", \"unmatched\": \"\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.1.3", + "type": "tool", + "uuid": "8fcb7359-267e-45e9-b52c-48a3a00f4304", + "when": null, + "workflow_outputs": [] + }, + "6": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 6, + "input_connections": { + "singtabop|input": { + "id": 4, + "output_name": "table" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Transpose matrix", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 564.544375882446, + "top": 338.46883469754164 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"transpose\", \"__current_case__\": 0}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "a2a72292-a7fc-40de-9d0d-f38a37adff05", + "when": null, + "workflow_outputs": [] + }, + "7": { + "annotation": "", + "content_id": "Count1", + "errors": null, + "id": 7, + "input_connections": { + "input": { + "id": 5, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Cell type counts", + "name": "Count", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 823.269628486547, + "top": 40.755152560439775 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Count1", + "tool_state": "{\"column\": [\"5\"], \"delim\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"sorting\": \"value\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.3", + "type": "tool", + "uuid": "80169ee2-cbd9-4011-98f3-46ec8992d2c4", + "when": null, + "workflow_outputs": [] + }, + "8": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 8, + "input_connections": { + "singtabop|input": { + "id": 6, + "output_name": "table" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Summed expression values", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 819.2824686670389, + "top": 369.9826283797391 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"matrixapply\", \"__current_case__\": 3, \"matrixapply_func\": {\"vector_op\": \"sum\", \"__current_case__\": 3}, \"dimension\": \"1\"}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "653aa519-aa2f-4de2-ac4f-f2ed436181d3", + "when": null, + "workflow_outputs": [] + }, + "9": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 9, + "input_connections": { + "code": { + "id": 2, + "output_name": "output" + }, + "infile": { + "id": 7, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Add header", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 1096.2263177731274, + "top": 49.2374256805691 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": {\"__class__\": \"ConnectedValue\"}, \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "21ff7506-61c8-4621-8382-4058563a745b", + "when": null, + "workflow_outputs": [] + }, + "10": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/annotatemyids/annotatemyids/3.14.0+galaxy1", + "errors": null, + "id": 10, + "input_connections": { + "id_file": { + "id": 8, + "output_name": "table" + } + }, + "inputs": [], + "label": null, + "name": "annotateMyIDs", + "outputs": [ + { + "name": "out_tab", + "type": "tabular" + } + ], + "position": { + "left": 1073.6973215206697, + "top": 546.5960235552448 + }, + "post_job_actions": { + "HideDatasetActionout_tab": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_tab" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/annotatemyids/annotatemyids/3.14.0+galaxy1", + "tool_shed_repository": { + "changeset_revision": "fe3ca740a485", + "name": "annotatemyids", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"file_has_header\": true, \"id_file\": {\"__class__\": \"ConnectedValue\"}, \"id_type\": \"SYMBOL\", \"organism\": \"Hs\", \"output_cols\": [\"SYMBOL\", \"ENSEMBL\"], \"remove_dups\": false, \"rscriptOpt\": false, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "3.14.0+galaxy1", + "type": "tool", + "uuid": "6a75d271-8a44-4a5d-90c3-e7504954520b", + "when": null, + "workflow_outputs": [] + }, + "11": { + "annotation": "Make the cell type column the first column", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "errors": null, + "id": 11, + "input_connections": { + "param_input": { + "id": 9, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Rearrange columns", + "name": "Column arrange", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1367.1701756851735, + "top": 101.68060373152612 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "tool_shed_repository": { + "changeset_revision": "6c6d26ff01ff", + "name": "column_arrange_by_header", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"discard_remaining\": false, \"param_input\": {\"__class__\": \"ConnectedValue\"}, \"rep_param_columns\": [{\"__index__\": 0, \"param_column\": \"cell_type\"}], \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.2", + "type": "tool", + "uuid": "6b2a83e8-939d-4d71-8e38-522dc4bdf50d", + "when": null, + "workflow_outputs": [] + }, + "12": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "errors": null, + "id": 12, + "input_connections": { + "param_input": { + "id": 10, + "output_name": "out_tab" + } + }, + "inputs": [], + "label": "Swap columns", + "name": "Column arrange", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1310.0651586277004, + "top": 542.6713659296199 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "tool_shed_repository": { + "changeset_revision": "6c6d26ff01ff", + "name": "column_arrange_by_header", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"discard_remaining\": false, \"param_input\": {\"__class__\": \"ConnectedValue\"}, \"rep_param_columns\": [{\"__index__\": 0, \"param_column\": \"ENSEMBL\"}], \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.2", + "type": "tool", + "uuid": "1de2462c-fedf-416f-a7e0-42381db13d2a", + "when": null, + "workflow_outputs": [] + }, + "13": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 13, + "input_connections": { + "singtabop|input": { + "id": 11, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Actual Cell Proportions", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 1622.3438817398614, + "top": 39.96182321394788 + }, + "post_job_actions": { + "RenameDatasetActiontable": { + "action_arguments": { + "newname": "Actual cell proportions" + }, + "action_type": "RenameDatasetAction", + "output_name": "table" + }, + "TagDatasetActiontable": { + "action_arguments": { + "tags": "name:actual" + }, + "action_type": "TagDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"custom\", \"__current_case__\": 3, \"fulltable_custom_expr\": \"table/table.sum(0)\"}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "5b10b0c5-333f-4d22-bb49-6d92437c81ac", + "when": null, + "workflow_outputs": [ + { + "label": "Actual cell proportions", + "output_name": "table", + "uuid": "d7453919-703e-4a30-901a-72d03b966170" + } + ] + }, + "14": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 14, + "input_connections": { + "infile": { + "id": 12, + "output_name": "output" + } + }, + "inputs": [], + "label": "Merge duplicates", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 1549.372242573395, + "top": 547.8501386205579 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"BEGIN {\\n ordering[\\\"test\\\"]\\n delete ordering[\\\"test\\\"]\\n}\\nNR > 1 {\\n if (gene[$1]){\\n gene[$1] = gene[$1]\\\":\\\"$2\\n } else {\\n gene[$1] = $2\\n ordering[length(ordering)+1] = $1\\n }\\n \\n}\\n\\nEND {\\n for (o=0; o < length(ordering); ++o){\\n print ordering[o]\\\"\\\\t\\\"gene[ordering[o]]\\n }\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "1aac8de5-a284-4e53-8fc0-dc26e4a9953b", + "when": null, + "workflow_outputs": [] + }, + "15": { + "annotation": "Adds the deduped gene names with the summed expression values", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "errors": null, + "id": 15, + "input_connections": { + "infile1": { + "id": 8, + "output_name": "table" + }, + "infile2": { + "id": 14, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Add infer column", + "name": "Join", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 1806.8537684550722, + "top": 401.7480471860869 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"column1\": \"1\", \"column2\": \"2\", \"empty_string_filler\": \"0\", \"header\": true, \"ignore_case\": false, \"infile1\": {\"__class__\": \"ConnectedValue\"}, \"infile2\": {\"__class__\": \"ConnectedValue\"}, \"jointype\": \" \", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "0f9df109-6d72-4e63-a259-c9fdb4d618d1", + "when": null, + "workflow_outputs": [] + }, + "16": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy1", + "errors": null, + "id": 16, + "input_connections": { + "input": { + "id": 15, + "output_name": "output" + } + }, + "inputs": [], + "label": "Remove ENSEMBL column", + "name": "Advanced Cut", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 2058.5535805371674, + "top": 463.59662513051506 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "fbf99087e067", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"complement\": \"--complement\", \"cut_type_options\": {\"cut_element\": \"-f\", \"__current_case__\": 0, \"delimiter\": \"\", \"colnames_option\": {\"header\": \"Y\", \"__current_case__\": 0, \"list\": [\"3\"]}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "48e6b12d-de43-4d0e-a2bc-de13e110546c", + "when": null, + "workflow_outputs": [] + }, + "17": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 17, + "input_connections": { + "code": { + "id": 3, + "output_name": "output" + }, + "infile": { + "id": 16, + "output_name": "output" + } + }, + "inputs": [], + "label": "Add new header", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 2323.3304857299872, + "top": 634.8763011669673 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": {\"__class__\": \"ConnectedValue\"}, \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "a3774f9c-2ce9-4e0e-a8c3-31d28f7d7951", + "when": null, + "workflow_outputs": [] + }, + "18": { + "annotation": "Filters out any NA values and sums the values of any duplicate genes", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 18, + "input_connections": { + "infile": { + "id": 17, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Filter and merge", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 2622.1390988900735, + "top": 697.2294960875936 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"NR == 1 {\\n for (i=2; i <= NF; i++){\\n cellorder[i] = $i\\n }\\n}\\n\\nNR > 1 {\\n for (i=2; i <= NF; i++){\\n if (cellorder[i] == \\\"0\\\" || $1 == \\\"NA\\\"){\\n } else {\\n bc[$1\\\"\\\\t\\\"cellorder[i]] = bc[$1\\\"\\\\t\\\"cellorder[i]] + $i\\n }\\n }\\n}\\n\\nEND {\\n print \\\"gene\\\\tbar\\\\tvalue\\\"\\n for (key in bc){\\n print key\\\"\\\\t\\\"bc[key]\\n }\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "7d19156b-ad8c-4f3c-9fcb-66b7af0b8e5f", + "when": null, + "workflow_outputs": [] + }, + "19": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 19, + "input_connections": { + "singtabop|input": { + "id": 18, + "output_name": "outfile" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": null, + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 2872.9034971035, + "top": 706.0251326306324 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"pivot\", \"__current_case__\": 2, \"index\": \"gene\", \"column\": \"bar\", \"values\": \"value\", \"aggfunc\": null, \"colfun_map\": []}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "4f9bfed6-ee1d-4dc7-837f-38eeeb93be76", + "when": null, + "workflow_outputs": [] + }, + "20": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_sed_tool/9.3+galaxy1", + "errors": null, + "id": 20, + "input_connections": { + "infile": { + "id": 19, + "output_name": "table" + } + }, + "inputs": [], + "label": "Pseudobulk", + "name": "Text transformation", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 3119.8813717899893, + "top": 702.982415775935 + }, + "post_job_actions": { + "RenameDatasetActionoutput": { + "action_arguments": { + "newname": "Pseudobulk" + }, + "action_type": "RenameDatasetAction", + "output_name": "output" + }, + "TagDatasetActionoutput": { + "action_arguments": { + "tags": "name:pseudobulk" + }, + "action_type": "TagDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_sed_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"adv_opts\": {\"adv_opts_selector\": \"basic\", \"__current_case__\": 0}, \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"1 s/^gene//\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "37a5bd7d-965c-4815-b7d8-fdecd6d4c36a", + "when": null, + "workflow_outputs": [ + { + "label": "Pseudobulk", + "output_name": "output", + "uuid": "1755df07-29ce-40fe-8d78-35b1d4770c07" + } + ] + } + }, + "tags": [], + "uuid": "71ff26db-9373-4c75-af45-46c04fc9ff21" + }, + "tool_id": null, + "type": "subworkflow", + "uuid": "444f1bc4-33de-40c6-8a9e-ebf4ef3a9a13", + "when": null, + "workflow_outputs": [] + }, + "7": { + "annotation": "", + "id": 7, + "input_connections": { + "Actual Header Awk": { + "id": 4, + "input_subworkflow_step_id": 2, + "output_name": "output" + }, + "Expression Data": { + "id": 3, + "input_subworkflow_step_id": 1, + "output_name": "output" + }, + "Infer Header Awk": { + "id": 5, + "input_subworkflow_step_id": 3, + "output_name": "output" + }, + "Metadata": { + "id": 2, + "input_subworkflow_step_id": 0, + "output_name": "output" + } + }, + "inputs": [], + "label": null, + "name": "(Collections Test) Create pseudobulk and actual proportions (child)", + "outputs": [], + "position": { + "left": 473.2291259765625, + "top": 458.2118835449219 + }, + "subworkflow": { + "a_galaxy_workflow": "true", + "annotation": "", + "comments": [ + { + "child_steps": [ + 4, + 1, + 0 + ], + "color": "turquoise", + "data": { + "title": "Single-cell data" + }, + "id": 0, + "position": [ + 0, + 42.9 + ], + "size": [ + 496.2, + 261.3 + ], + "type": "frame" + }, + { + "child_steps": [ + 5, + 7, + 9, + 11, + 13, + 2 + ], + "color": "green", + "data": { + "title": "Generate actual proportion values" + }, + "id": 1, + "position": [ + 550.7, + 0 + ], + "size": [ + 1291.6, + 273.1 + ], + "type": "frame" + }, + { + "child_steps": [ + 10, + 12, + 14 + ], + "color": "pink", + "data": { + "title": "Merge duplicate genes by ENSEMBL ID" + }, + "id": 2, + "position": [ + 1053.7, + 506.6 + ], + "size": [ + 715.7, + 174.5 + ], + "type": "frame" + }, + { + "child_steps": [ + 17, + 3 + ], + "color": "yellow", + "data": { + "title": "Rename header" + }, + "id": 3, + "position": [ + 2058.5, + 594.9 + ], + "size": [ + 484.8, + 204.3 + ], + "type": "frame" + }, + { + "child_steps": [ + 18, + 19, + 20 + ], + "color": "orange", + "data": { + "title": "Psuedobulk data" + }, + "id": 4, + "position": [ + 2602.1, + 657.2 + ], + "size": [ + 745, + 199.8 + ], + "type": "frame" + } + ], + "format-version": "0.1", + "name": "(Collections Test) Create pseudobulk and actual proportions (child)", + "report": { + "markdown": "\n# Workflow Execution Report\n\n## Workflow Inputs\n```galaxy\ninvocation_inputs()\n```\n\n## Workflow Outputs\n```galaxy\ninvocation_outputs()\n```\n\n## Workflow\n```galaxy\nworkflow_display()\n```\n" + }, + "steps": { + "0": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Metadata" + } + ], + "label": "Metadata", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 28.993999977029414, + "top": 92.24134730974882 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "48e5a9cd-306a-4da0-9ecc-66bbeb59220d", + "when": null, + "workflow_outputs": [] + }, + "1": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 1, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Expression Data" + } + ], + "label": "Expression Data", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 33.91038163233047, + "top": 189.82181514530714 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "7d15eb59-83ce-439b-96e4-b0bafbefb3fe", + "when": null, + "workflow_outputs": [] + }, + "2": { + "annotation": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "content_id": null, + "errors": null, + "id": 2, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "name": "Actual Header Awk" + } + ], + "label": "Actual Header Awk", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 825.5208226578288, + "top": 170.56951974715125 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "5fc4d4b4-fff9-400f-b376-5c0cca159507", + "when": null, + "workflow_outputs": [ + { + "label": null, + "output_name": "output", + "uuid": "858f189d-f98b-47ac-97f3-29faebc2353c" + } + ] + }, + "3": { + "annotation": "BEGIN { print \"0\\tB_infer\\t0\" }\nNR > 1 {print $0 }", + "content_id": null, + "errors": null, + "id": 3, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"0\\tB_infer\\t0\" }\nNR > 1 {print $0 }", + "name": "Infer Header Awk" + } + ], + "label": "Infer Header Awk", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 2078.524235261645, + "top": 665.0596269116171 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "cdb4b722-439f-472b-98cf-803832f2fcee", + "when": null, + "workflow_outputs": [ + { + "label": null, + "output_name": "output", + "uuid": "8b5b425d-3da1-446c-a213-71edd5b8b63f" + } + ] + }, + "4": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 4, + "input_connections": { + "singtabop|input": { + "id": 1, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Create subsample", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 276.2314268692556, + "top": 171.05783913974653 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"custom\", \"__current_case__\": 3, \"fulltable_custom_expr\": \"table.sample(200)\"}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "e1761737-6c26-4e4c-928f-5fd333878831", + "when": null, + "workflow_outputs": [] + }, + "5": { + "annotation": "", + "content_id": "join1", + "errors": null, + "id": 5, + "input_connections": { + "input1": { + "id": 0, + "output_name": "output" + }, + "input2": { + "id": 4, + "output_name": "table" + } + }, + "inputs": [], + "label": "Add metadata", + "name": "Join two Datasets", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 570.7118184308304, + "top": 39.207351358363134 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "join1", + "tool_state": "{\"field1\": \"1\", \"field2\": \"1\", \"fill_empty_columns\": {\"fill_empty_columns_switch\": \"no_fill\", \"__current_case__\": 0}, \"header\": \"\", \"input1\": {\"__class__\": \"ConnectedValue\"}, \"input2\": {\"__class__\": \"ConnectedValue\"}, \"partial\": \"\", \"unmatched\": \"\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.1.3", + "type": "tool", + "uuid": "8fcb7359-267e-45e9-b52c-48a3a00f4304", + "when": null, + "workflow_outputs": [] + }, + "6": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 6, + "input_connections": { + "singtabop|input": { + "id": 4, + "output_name": "table" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Transpose matrix", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 564.544375882446, + "top": 338.46883469754164 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"transpose\", \"__current_case__\": 0}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "a2a72292-a7fc-40de-9d0d-f38a37adff05", + "when": null, + "workflow_outputs": [] + }, + "7": { + "annotation": "", + "content_id": "Count1", + "errors": null, + "id": 7, + "input_connections": { + "input": { + "id": 5, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Cell type counts", + "name": "Count", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 823.269628486547, + "top": 40.755152560439775 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Count1", + "tool_state": "{\"column\": [\"5\"], \"delim\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"sorting\": \"value\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.3", + "type": "tool", + "uuid": "80169ee2-cbd9-4011-98f3-46ec8992d2c4", + "when": null, + "workflow_outputs": [] + }, + "8": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 8, + "input_connections": { + "singtabop|input": { + "id": 6, + "output_name": "table" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Summed expression values", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 819.2824686670389, + "top": 369.9826283797391 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"matrixapply\", \"__current_case__\": 3, \"matrixapply_func\": {\"vector_op\": \"sum\", \"__current_case__\": 3}, \"dimension\": \"1\"}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "653aa519-aa2f-4de2-ac4f-f2ed436181d3", + "when": null, + "workflow_outputs": [] + }, + "9": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 9, + "input_connections": { + "code": { + "id": 2, + "output_name": "output" + }, + "infile": { + "id": 7, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Add header", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 1096.2263177731274, + "top": 49.2374256805691 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": {\"__class__\": \"ConnectedValue\"}, \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "21ff7506-61c8-4621-8382-4058563a745b", + "when": null, + "workflow_outputs": [] + }, + "10": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/annotatemyids/annotatemyids/3.14.0+galaxy1", + "errors": null, + "id": 10, + "input_connections": { + "id_file": { + "id": 8, + "output_name": "table" + } + }, + "inputs": [], + "label": null, + "name": "annotateMyIDs", + "outputs": [ + { + "name": "out_tab", + "type": "tabular" + } + ], + "position": { + "left": 1073.6973215206697, + "top": 546.5960235552448 + }, + "post_job_actions": { + "HideDatasetActionout_tab": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_tab" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/annotatemyids/annotatemyids/3.14.0+galaxy1", + "tool_shed_repository": { + "changeset_revision": "fe3ca740a485", + "name": "annotatemyids", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"file_has_header\": true, \"id_file\": {\"__class__\": \"ConnectedValue\"}, \"id_type\": \"SYMBOL\", \"organism\": \"Hs\", \"output_cols\": [\"SYMBOL\", \"ENSEMBL\"], \"remove_dups\": false, \"rscriptOpt\": false, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "3.14.0+galaxy1", + "type": "tool", + "uuid": "6a75d271-8a44-4a5d-90c3-e7504954520b", + "when": null, + "workflow_outputs": [] + }, + "11": { + "annotation": "Make the cell type column the first column", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "errors": null, + "id": 11, + "input_connections": { + "param_input": { + "id": 9, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Rearrange columns", + "name": "Column arrange", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1367.1701756851735, + "top": 101.68060373152612 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "tool_shed_repository": { + "changeset_revision": "6c6d26ff01ff", + "name": "column_arrange_by_header", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"discard_remaining\": false, \"param_input\": {\"__class__\": \"ConnectedValue\"}, \"rep_param_columns\": [{\"__index__\": 0, \"param_column\": \"cell_type\"}], \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.2", + "type": "tool", + "uuid": "6b2a83e8-939d-4d71-8e38-522dc4bdf50d", + "when": null, + "workflow_outputs": [] + }, + "12": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "errors": null, + "id": 12, + "input_connections": { + "param_input": { + "id": 10, + "output_name": "out_tab" + } + }, + "inputs": [], + "label": "Swap columns", + "name": "Column arrange", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1310.0651586277004, + "top": 542.6713659296199 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "tool_shed_repository": { + "changeset_revision": "6c6d26ff01ff", + "name": "column_arrange_by_header", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"discard_remaining\": false, \"param_input\": {\"__class__\": \"ConnectedValue\"}, \"rep_param_columns\": [{\"__index__\": 0, \"param_column\": \"ENSEMBL\"}], \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.2", + "type": "tool", + "uuid": "1de2462c-fedf-416f-a7e0-42381db13d2a", + "when": null, + "workflow_outputs": [] + }, + "13": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 13, + "input_connections": { + "singtabop|input": { + "id": 11, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Actual Cell Proportions", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 1622.3438817398614, + "top": 39.96182321394788 + }, + "post_job_actions": { + "RenameDatasetActiontable": { + "action_arguments": { + "newname": "Actual cell proportions" + }, + "action_type": "RenameDatasetAction", + "output_name": "table" + }, + "TagDatasetActiontable": { + "action_arguments": { + "tags": "name:actual" + }, + "action_type": "TagDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"custom\", \"__current_case__\": 3, \"fulltable_custom_expr\": \"table/table.sum(0)\"}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "5b10b0c5-333f-4d22-bb49-6d92437c81ac", + "when": null, + "workflow_outputs": [ + { + "label": "Actual cell proportions", + "output_name": "table", + "uuid": "d7453919-703e-4a30-901a-72d03b966170" + } + ] + }, + "14": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 14, + "input_connections": { + "infile": { + "id": 12, + "output_name": "output" + } + }, + "inputs": [], + "label": "Merge duplicates", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 1549.372242573395, + "top": 547.8501386205579 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"BEGIN {\\n ordering[\\\"test\\\"]\\n delete ordering[\\\"test\\\"]\\n}\\nNR > 1 {\\n if (gene[$1]){\\n gene[$1] = gene[$1]\\\":\\\"$2\\n } else {\\n gene[$1] = $2\\n ordering[length(ordering)+1] = $1\\n }\\n \\n}\\n\\nEND {\\n for (o=0; o < length(ordering); ++o){\\n print ordering[o]\\\"\\\\t\\\"gene[ordering[o]]\\n }\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "1aac8de5-a284-4e53-8fc0-dc26e4a9953b", + "when": null, + "workflow_outputs": [] + }, + "15": { + "annotation": "Adds the deduped gene names with the summed expression values", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "errors": null, + "id": 15, + "input_connections": { + "infile1": { + "id": 8, + "output_name": "table" + }, + "infile2": { + "id": 14, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Add infer column", + "name": "Join", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 1806.8537684550722, + "top": 401.7480471860869 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"column1\": \"1\", \"column2\": \"2\", \"empty_string_filler\": \"0\", \"header\": true, \"ignore_case\": false, \"infile1\": {\"__class__\": \"ConnectedValue\"}, \"infile2\": {\"__class__\": \"ConnectedValue\"}, \"jointype\": \" \", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "0f9df109-6d72-4e63-a259-c9fdb4d618d1", + "when": null, + "workflow_outputs": [] + }, + "16": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy1", + "errors": null, + "id": 16, + "input_connections": { + "input": { + "id": 15, + "output_name": "output" + } + }, + "inputs": [], + "label": "Remove ENSEMBL column", + "name": "Advanced Cut", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 2058.5535805371674, + "top": 463.59662513051506 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "fbf99087e067", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"complement\": \"--complement\", \"cut_type_options\": {\"cut_element\": \"-f\", \"__current_case__\": 0, \"delimiter\": \"\", \"colnames_option\": {\"header\": \"Y\", \"__current_case__\": 0, \"list\": [\"3\"]}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "48e6b12d-de43-4d0e-a2bc-de13e110546c", + "when": null, + "workflow_outputs": [] + }, + "17": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 17, + "input_connections": { + "code": { + "id": 3, + "output_name": "output" + }, + "infile": { + "id": 16, + "output_name": "output" + } + }, + "inputs": [], + "label": "Add new header", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 2323.3304857299872, + "top": 634.8763011669673 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": {\"__class__\": \"ConnectedValue\"}, \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "a3774f9c-2ce9-4e0e-a8c3-31d28f7d7951", + "when": null, + "workflow_outputs": [] + }, + "18": { + "annotation": "Filters out any NA values and sums the values of any duplicate genes", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 18, + "input_connections": { + "infile": { + "id": 17, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Filter and merge", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 2622.1390988900735, + "top": 697.2294960875936 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"NR == 1 {\\n for (i=2; i <= NF; i++){\\n cellorder[i] = $i\\n }\\n}\\n\\nNR > 1 {\\n for (i=2; i <= NF; i++){\\n if (cellorder[i] == \\\"0\\\" || $1 == \\\"NA\\\"){\\n } else {\\n bc[$1\\\"\\\\t\\\"cellorder[i]] = bc[$1\\\"\\\\t\\\"cellorder[i]] + $i\\n }\\n }\\n}\\n\\nEND {\\n print \\\"gene\\\\tbar\\\\tvalue\\\"\\n for (key in bc){\\n print key\\\"\\\\t\\\"bc[key]\\n }\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "7d19156b-ad8c-4f3c-9fcb-66b7af0b8e5f", + "when": null, + "workflow_outputs": [] + }, + "19": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 19, + "input_connections": { + "singtabop|input": { + "id": 18, + "output_name": "outfile" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": null, + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 2872.9034971035, + "top": 706.0251326306324 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"pivot\", \"__current_case__\": 2, \"index\": \"gene\", \"column\": \"bar\", \"values\": \"value\", \"aggfunc\": null, \"colfun_map\": []}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "4f9bfed6-ee1d-4dc7-837f-38eeeb93be76", + "when": null, + "workflow_outputs": [] + }, + "20": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_sed_tool/9.3+galaxy1", + "errors": null, + "id": 20, + "input_connections": { + "infile": { + "id": 19, + "output_name": "table" + } + }, + "inputs": [], + "label": "Pseudobulk", + "name": "Text transformation", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 3119.8813717899893, + "top": 702.982415775935 + }, + "post_job_actions": { + "RenameDatasetActionoutput": { + "action_arguments": { + "newname": "Pseudobulk" + }, + "action_type": "RenameDatasetAction", + "output_name": "output" + }, + "TagDatasetActionoutput": { + "action_arguments": { + "tags": "name:pseudobulk" + }, + "action_type": "TagDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_sed_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"adv_opts\": {\"adv_opts_selector\": \"basic\", \"__current_case__\": 0}, \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"1 s/^gene//\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "37a5bd7d-965c-4815-b7d8-fdecd6d4c36a", + "when": null, + "workflow_outputs": [ + { + "label": "Pseudobulk", + "output_name": "output", + "uuid": "1755df07-29ce-40fe-8d78-35b1d4770c07" + } + ] + } + }, + "tags": [], + "uuid": "71ff26db-9373-4c75-af45-46c04fc9ff21" + }, + "tool_id": null, + "type": "subworkflow", + "uuid": "dc1d1003-d5d5-4a41-9ba4-4a10fcdfec37", + "when": null, + "workflow_outputs": [] + } + }, + "tags": [ + "name:deconv-eval" + ], + "uuid": "eca12d13-787c-4551-832b-fff1de6fcab5", + "version": 11 +} \ No newline at end of file diff --git a/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-1-create-data_child.ga b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-1-create-data_child.ga new file mode 100644 index 00000000000000..f4f458261ec92a --- /dev/null +++ b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-1-create-data_child.ga @@ -0,0 +1,1065 @@ +{ + "a_galaxy_workflow": "true", + "annotation": "", + "comments": [ + { + "child_steps": [ + 18, + 19, + 20 + ], + "color": "orange", + "data": { + "title": "Psuedobulk data" + }, + "id": 4, + "position": [ + 2602.1, + 657.2 + ], + "size": [ + 745, + 199.8 + ], + "type": "frame" + }, + { + "child_steps": [ + 17, + 3 + ], + "color": "yellow", + "data": { + "title": "Rename header" + }, + "id": 3, + "position": [ + 2058.5, + 594.9 + ], + "size": [ + 484.8, + 204.3 + ], + "type": "frame" + }, + { + "child_steps": [ + 10, + 12, + 14 + ], + "color": "pink", + "data": { + "title": "Merge duplicate genes by ENSEMBL ID" + }, + "id": 2, + "position": [ + 1053.7, + 506.6 + ], + "size": [ + 715.7, + 174.5 + ], + "type": "frame" + }, + { + "child_steps": [ + 5, + 7, + 9, + 11, + 13, + 2 + ], + "color": "green", + "data": { + "title": "Generate actual proportion values" + }, + "id": 1, + "position": [ + 550.7, + 0 + ], + "size": [ + 1291.6, + 273.1 + ], + "type": "frame" + }, + { + "child_steps": [ + 4, + 1, + 0 + ], + "color": "turquoise", + "data": { + "title": "Single-cell data" + }, + "id": 0, + "position": [ + 0, + 42.9 + ], + "size": [ + 496.2, + 261.3 + ], + "type": "frame" + } + ], + "creator": [ + { + "class": "Person", + "identifier": "0009-0008-9422-6380", + "name": "Morgan Howells" + } + ], + "format-version": "0.1", + "license": "MIT", + "name": "Music Stage 1 - Create pseudobulk and actual proportions (child)", + "report": { + "markdown": "\n# Workflow Execution Report\n\n## Workflow Inputs\n```galaxy\ninvocation_inputs()\n```\n\n## Workflow Outputs\n```galaxy\ninvocation_outputs()\n```\n\n## Workflow\n```galaxy\nworkflow_display()\n```\n" + }, + "steps": { + "0": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Metadata" + } + ], + "label": "Metadata", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 28.993999977029414, + "top": 92.24134730974882 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "1fb7b6f4-8020-4a47-b349-fd6697bd524a", + "when": null, + "workflow_outputs": [] + }, + "1": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 1, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Expression Data" + } + ], + "label": "Expression Data", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 33.91038163233047, + "top": 189.82181514530714 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "7697a419-a175-4fab-a834-16dd85229746", + "when": null, + "workflow_outputs": [] + }, + "2": { + "annotation": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "content_id": null, + "errors": null, + "id": 2, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"B_actual\\tcell_type\" } { print $0 }", + "name": "Actual Header Awk" + } + ], + "label": "Actual Header Awk", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 825.5208226578288, + "top": 170.56951974715125 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "6a9ac444-da4d-456f-a7e3-8243035ffef2", + "when": null, + "workflow_outputs": [] + }, + "3": { + "annotation": "BEGIN { print \"0\\tB_infer\\t0\" }\nNR > 1 {print $0 }", + "content_id": null, + "errors": null, + "id": 3, + "input_connections": {}, + "inputs": [ + { + "description": "BEGIN { print \"0\\tB_infer\\t0\" }\nNR > 1 {print $0 }", + "name": "Infer Header Awk" + } + ], + "label": "Infer Header Awk", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 2078.524235261645, + "top": 665.0596269116171 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "efb6b1bc-3ed1-4910-9f78-dcd8d479c861", + "when": null, + "workflow_outputs": [] + }, + "4": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 4, + "input_connections": { + "singtabop|input": { + "id": 1, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Create subsample", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 276.2314268692556, + "top": 171.05783913974653 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"custom\", \"__current_case__\": 3, \"fulltable_custom_expr\": \"table.sample(200)\"}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "ed604cea-e884-404e-9a1b-6a88078e1027", + "when": null, + "workflow_outputs": [] + }, + "5": { + "annotation": "", + "content_id": "join1", + "errors": null, + "id": 5, + "input_connections": { + "input1": { + "id": 0, + "output_name": "output" + }, + "input2": { + "id": 4, + "output_name": "table" + } + }, + "inputs": [], + "label": "Add metadata", + "name": "Join two Datasets", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 570.7118184308304, + "top": 39.207351358363134 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "join1", + "tool_state": "{\"field1\": \"1\", \"field2\": \"1\", \"fill_empty_columns\": {\"fill_empty_columns_switch\": \"no_fill\", \"__current_case__\": 0}, \"header\": \"\", \"input1\": {\"__class__\": \"ConnectedValue\"}, \"input2\": {\"__class__\": \"ConnectedValue\"}, \"partial\": \"\", \"unmatched\": \"\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.1.3", + "type": "tool", + "uuid": "ecbd747e-60b7-4b3d-9732-60c46723df01", + "when": null, + "workflow_outputs": [] + }, + "6": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 6, + "input_connections": { + "singtabop|input": { + "id": 4, + "output_name": "table" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Transpose matrix", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 564.544375882446, + "top": 338.46883469754164 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"transpose\", \"__current_case__\": 0}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "24b4e2df-4270-4815-8b1d-394010d0c63c", + "when": null, + "workflow_outputs": [] + }, + "7": { + "annotation": "", + "content_id": "Count1", + "errors": null, + "id": 7, + "input_connections": { + "input": { + "id": 5, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Cell type counts", + "name": "Count", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 823.269628486547, + "top": 40.755152560439775 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Count1", + "tool_state": "{\"column\": [\"5\"], \"delim\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"sorting\": \"value\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.3", + "type": "tool", + "uuid": "b4468e7f-c11c-47c7-8913-5d7b192b3429", + "when": null, + "workflow_outputs": [] + }, + "8": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 8, + "input_connections": { + "singtabop|input": { + "id": 6, + "output_name": "table" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Summed expression values", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 819.2824686670389, + "top": 369.9826283797391 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"ignore_nas\", \"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"matrixapply\", \"__current_case__\": 3, \"matrixapply_func\": {\"vector_op\": \"sum\", \"__current_case__\": 3}, \"dimension\": \"1\"}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "290e7b0d-44fa-4227-8a48-4699bcd440e3", + "when": null, + "workflow_outputs": [] + }, + "9": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 9, + "input_connections": { + "code": { + "id": 2, + "output_name": "output" + }, + "infile": { + "id": 7, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Add header", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 1096.2263177731274, + "top": 49.2374256805691 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": {\"__class__\": \"ConnectedValue\"}, \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "82b5f5aa-6cd3-4664-8abe-dd4f365f336a", + "when": null, + "workflow_outputs": [] + }, + "10": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/annotatemyids/annotatemyids/3.14.0+galaxy1", + "errors": null, + "id": 10, + "input_connections": { + "id_file": { + "id": 8, + "output_name": "table" + } + }, + "inputs": [], + "label": null, + "name": "annotateMyIDs", + "outputs": [ + { + "name": "out_tab", + "type": "tabular" + } + ], + "position": { + "left": 1073.6973215206697, + "top": 546.5960235552448 + }, + "post_job_actions": { + "HideDatasetActionout_tab": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_tab" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/annotatemyids/annotatemyids/3.14.0+galaxy1", + "tool_shed_repository": { + "changeset_revision": "fe3ca740a485", + "name": "annotatemyids", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"file_has_header\": true, \"id_file\": {\"__class__\": \"ConnectedValue\"}, \"id_type\": \"SYMBOL\", \"organism\": \"Hs\", \"output_cols\": [\"SYMBOL\", \"ENSEMBL\"], \"remove_dups\": false, \"rscriptOpt\": false, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "3.14.0+galaxy1", + "type": "tool", + "uuid": "21445fea-8219-4384-9ea4-3e6b92d86fd6", + "when": null, + "workflow_outputs": [] + }, + "11": { + "annotation": "Make the cell type column the first column", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "errors": null, + "id": 11, + "input_connections": { + "param_input": { + "id": 9, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Rearrange columns", + "name": "Column arrange", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1367.1701756851735, + "top": 101.68060373152612 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "tool_shed_repository": { + "changeset_revision": "6c6d26ff01ff", + "name": "column_arrange_by_header", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"discard_remaining\": false, \"param_input\": {\"__class__\": \"ConnectedValue\"}, \"rep_param_columns\": [{\"__index__\": 0, \"param_column\": \"cell_type\"}], \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.2", + "type": "tool", + "uuid": "94d290b7-aefd-4984-a073-c9c244ff8c33", + "when": null, + "workflow_outputs": [] + }, + "12": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "errors": null, + "id": 12, + "input_connections": { + "param_input": { + "id": 10, + "output_name": "out_tab" + } + }, + "inputs": [], + "label": "Swap columns", + "name": "Column arrange", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1310.0651586277004, + "top": 542.6713659296199 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/column_arrange_by_header/bg_column_arrange_by_header/0.2", + "tool_shed_repository": { + "changeset_revision": "6c6d26ff01ff", + "name": "column_arrange_by_header", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"discard_remaining\": false, \"param_input\": {\"__class__\": \"ConnectedValue\"}, \"rep_param_columns\": [{\"__index__\": 0, \"param_column\": \"ENSEMBL\"}], \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.2", + "type": "tool", + "uuid": "14a329eb-8d72-4387-9208-21f8ea9e9f01", + "when": null, + "workflow_outputs": [] + }, + "13": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 13, + "input_connections": { + "singtabop|input": { + "id": 11, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Actual Cell Proportions", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 1622.3438817398614, + "top": 39.96182321394788 + }, + "post_job_actions": { + "RenameDatasetActiontable": { + "action_arguments": { + "newname": "Actual cell proportions" + }, + "action_type": "RenameDatasetAction", + "output_name": "table" + }, + "TagDatasetActiontable": { + "action_arguments": { + "tags": "name:actual" + }, + "action_type": "TagDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\", \"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"custom\", \"__current_case__\": 3, \"fulltable_custom_expr\": \"table/table.sum(0)\"}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "2a757e97-b884-445f-bdb3-c096ff3a2316", + "when": null, + "workflow_outputs": [ + { + "label": "Actual cell proportions", + "output_name": "table", + "uuid": "3097b065-a236-40fe-a47b-98d89ba66e1a" + } + ] + }, + "14": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 14, + "input_connections": { + "infile": { + "id": 12, + "output_name": "output" + } + }, + "inputs": [], + "label": "Merge duplicates", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 1549.372242573395, + "top": 547.8501386205579 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"BEGIN {\\n ordering[\\\"test\\\"]\\n delete ordering[\\\"test\\\"]\\n}\\nNR > 1 {\\n if (gene[$1]){\\n gene[$1] = gene[$1]\\\":\\\"$2\\n } else {\\n gene[$1] = $2\\n ordering[length(ordering)+1] = $1\\n }\\n \\n}\\n\\nEND {\\n for (o=0; o < length(ordering); ++o){\\n print ordering[o]\\\"\\\\t\\\"gene[ordering[o]]\\n }\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "05537f3c-0085-409d-8611-134661b7b332", + "when": null, + "workflow_outputs": [] + }, + "15": { + "annotation": "Adds the deduped gene names with the summed expression values", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "errors": null, + "id": 15, + "input_connections": { + "infile1": { + "id": 8, + "output_name": "table" + }, + "infile2": { + "id": 14, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Add infer column", + "name": "Join", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 1806.8537684550722, + "top": 401.7480471860869 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"column1\": \"1\", \"column2\": \"2\", \"empty_string_filler\": \"0\", \"header\": true, \"ignore_case\": false, \"infile1\": {\"__class__\": \"ConnectedValue\"}, \"infile2\": {\"__class__\": \"ConnectedValue\"}, \"jointype\": \" \", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "87bad1d6-53c6-448f-aafb-9c9ec7396ddb", + "when": null, + "workflow_outputs": [] + }, + "16": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy1", + "errors": null, + "id": 16, + "input_connections": { + "input": { + "id": 15, + "output_name": "output" + } + }, + "inputs": [], + "label": "Remove ENSEMBL column", + "name": "Advanced Cut", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 2058.5535805371674, + "top": 463.59662513051506 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "fbf99087e067", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"complement\": \"--complement\", \"cut_type_options\": {\"cut_element\": \"-f\", \"__current_case__\": 0, \"delimiter\": \"\", \"colnames_option\": {\"header\": \"Y\", \"__current_case__\": 0, \"list\": [\"3\"]}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "05037136-21c3-45e8-b57a-f7297f6171fb", + "when": null, + "workflow_outputs": [] + }, + "17": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 17, + "input_connections": { + "code": { + "id": 3, + "output_name": "output" + }, + "infile": { + "id": 16, + "output_name": "output" + } + }, + "inputs": [], + "label": "Add new header", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 2323.3304857299872, + "top": 634.8763011669673 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": {\"__class__\": \"ConnectedValue\"}, \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "e0e0c322-a597-4af2-865c-7f62085a053d", + "when": null, + "workflow_outputs": [] + }, + "18": { + "annotation": "Filters out any NA values and sums the values of any duplicate genes", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 18, + "input_connections": { + "infile": { + "id": 17, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Filter and merge", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 2622.1390988900735, + "top": 697.2294960875936 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"NR == 1 {\\n for (i=2; i <= NF; i++){\\n cellorder[i] = $i\\n }\\n}\\n\\nNR > 1 {\\n for (i=2; i <= NF; i++){\\n if (cellorder[i] == \\\"0\\\" || $1 == \\\"NA\\\"){\\n } else {\\n bc[$1\\\"\\\\t\\\"cellorder[i]] = bc[$1\\\"\\\\t\\\"cellorder[i]] + $i\\n }\\n }\\n}\\n\\nEND {\\n print \\\"gene\\\\tbar\\\\tvalue\\\"\\n for (key in bc){\\n print key\\\"\\\\t\\\"bc[key]\\n }\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "5dcd66d9-c89b-4de8-87e1-e695190462fe", + "when": null, + "workflow_outputs": [] + }, + "19": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 19, + "input_connections": { + "singtabop|input": { + "id": 18, + "output_name": "outfile" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": null, + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 2872.9034971035, + "top": 706.0251326306324 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"tabular\", \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"out_opts\": [\"output_headers_col\", \"output_headers_row\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"fulltable\", \"__current_case__\": 4, \"general\": {\"use\": \"pivot\", \"__current_case__\": 2, \"index\": \"gene\", \"column\": \"bar\", \"values\": \"value\", \"aggfunc\": null, \"colfun_map\": []}}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "7b982075-2d83-4aab-a024-706bdac5c2a5", + "when": null, + "workflow_outputs": [] + }, + "20": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_sed_tool/9.3+galaxy1", + "errors": null, + "id": 20, + "input_connections": { + "infile": { + "id": 19, + "output_name": "table" + } + }, + "inputs": [], + "label": "Pseudobulk", + "name": "Text transformation", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 3119.8813717899893, + "top": 702.982415775935 + }, + "post_job_actions": { + "RenameDatasetActionoutput": { + "action_arguments": { + "newname": "Pseudobulk" + }, + "action_type": "RenameDatasetAction", + "output_name": "output" + }, + "TagDatasetActionoutput": { + "action_arguments": { + "tags": "name:pseudobulk" + }, + "action_type": "TagDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_sed_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"__input_ext\": \"input\", \"adv_opts\": {\"adv_opts_selector\": \"basic\", \"__current_case__\": 0}, \"chromInfo\": \"/opt/galaxy/tool-data/shared/ucsc/chrom/?.len\", \"code\": \"1 s/^gene//\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "4e2d6729-0453-4130-91aa-b2cb66da59d6", + "when": null, + "workflow_outputs": [ + { + "label": "Pseudobulk", + "output_name": "output", + "uuid": "322beba0-3dff-41f4-b868-17e6567940fb" + } + ] + } + }, + "tags": [ + "name:deconv-eval" + ], + "uuid": "efe13622-f266-4913-a99c-ef13333745f4", + "version": 8 +} \ No newline at end of file diff --git a/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-2-deconv.ga b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-2-deconv.ga new file mode 100644 index 00000000000000..bcf730e3dd5ce7 --- /dev/null +++ b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-2-deconv.ga @@ -0,0 +1,1082 @@ +{ + "a_galaxy_workflow": "true", + "annotation": "", + "comments": [ + { + "child_steps": [ + 8, + 9, + 10, + 1, + 0 + ], + "color": "green", + "data": { + "title": "Psuedobulk data" + }, + "id": 0, + "position": [ + 0, + 158.1 + ], + "size": [ + 1097.1, + 295 + ], + "type": "frame" + }, + { + "child_steps": [ + 2 + ], + "color": "pink", + "data": { + "title": "Single-cell reference data" + }, + "id": 1, + "position": [ + 858.8000000000001, + 0 + ], + "size": [ + 240, + 141.8 + ], + "type": "frame" + }, + { + "child_steps": [ + 11, + 12 + ], + "color": "orange", + "data": { + "title": "Deconvolution" + }, + "id": 2, + "position": [ + 1247.9, + 332 + ], + "size": [ + 520.4, + 447.4 + ], + "type": "frame" + }, + { + "child_steps": [ + 13, + 15, + 17, + 18, + 6 + ], + "color": "turquoise", + "data": { + "title": "Actual - Infer (B)" + }, + "id": 3, + "position": [ + 1936.4, + 97.5 + ], + "size": [ + 775, + 548 + ], + "type": "frame" + }, + { + "child_steps": [ + 14, + 16, + 19, + 20, + 7 + ], + "color": "turquoise", + "data": { + "title": "Actual - Infer (A)" + }, + "id": 4, + "position": [ + 1937.7, + 666.2 + ], + "size": [ + 778.3, + 522.7 + ], + "type": "frame" + } + ], + "creator": [ + { + "class": "Person", + "identifier": "0009-0008-9422-6380", + "name": "Morgan Howells" + } + ], + "format-version": "0.1", + "license": "MIT", + "name": "Music Stage 2 - Inferring cellular proportions", + "report": { + "markdown": "\n# Workflow Execution Report\n\n## Workflow Inputs\n```galaxy\ninvocation_inputs()\n```\n\n## Workflow Outputs\n```galaxy\ninvocation_outputs()\n```\n\n## Workflow\n```galaxy\nworkflow_display()\n```\n" + }, + "steps": { + "0": { + "annotation": "Genes are rows, with one column of values from the pseudobulk\nHeader with 'name' of sample required", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [ + { + "description": "Genes are rows, with one column of values from the pseudobulk\nHeader with 'name' of sample required", + "name": "Pseudobulk - A" + } + ], + "label": "Pseudobulk - A", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 29.182949534405275, + "top": 218.28653705049373 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "a0530448-2481-46d1-b6f2-974767278823", + "when": null, + "workflow_outputs": [] + }, + "1": { + "annotation": "Genes are rows, with one column of values from the pseudobulk\nHeader with 'name' of sample required", + "content_id": null, + "errors": null, + "id": 1, + "input_connections": {}, + "inputs": [ + { + "description": "Genes are rows, with one column of values from the pseudobulk\nHeader with 'name' of sample required", + "name": "Pseudobulk - B" + } + ], + "label": "Pseudobulk - B", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 26.191361223759202, + "top": 340.5037030938067 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "c388370a-1a79-40a0-b103-ccba3a1f78f2", + "when": null, + "workflow_outputs": [] + }, + "2": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 2, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "ESet Reference scRNA-seq" + } + ], + "label": "ESet Reference scRNA-seq", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 871.1741313667314, + "top": 45.57411048942076 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "465bef13-7440-4a9e-b3c7-b809ad5548dc", + "when": null, + "workflow_outputs": [] + }, + "3": { + "annotation": "Example: cellType", + "content_id": null, + "errors": null, + "id": 3, + "input_connections": {}, + "inputs": [ + { + "description": "Example: cellType", + "name": "Cell Types Label from scRNA dataset" + } + ], + "label": "Cell Types Label from scRNA dataset", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 898.7704968449124, + "top": 504.7916945164577 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "2055e45e-6b72-49a8-94f4-e0c5b1790aef", + "when": null, + "workflow_outputs": [] + }, + "4": { + "annotation": "Example: sampleID, Individual", + "content_id": null, + "errors": null, + "id": 4, + "input_connections": {}, + "inputs": [ + { + "description": "Example: sampleID, Individual", + "name": "Samples Identifer from scRNA dataset" + } + ], + "label": "Samples Identifer from scRNA dataset", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 900.7795981900515, + "top": 630.7221853415895 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "3cbbc205-218b-4263-b53d-d3548f4f469c", + "when": null, + "workflow_outputs": [] + }, + "5": { + "annotation": "Comma list of cell types to use from scRNA dataset.\n\nExample: acinar,alpha,beta,delta,ductal,gamma", + "content_id": null, + "errors": null, + "id": 5, + "input_connections": {}, + "inputs": [ + { + "description": "Comma list of cell types to use from scRNA dataset.\n\nExample: acinar,alpha,beta,delta,ductal,gamma", + "name": "Cell types to use from scRNA dataset" + } + ], + "label": "Cell types to use from scRNA dataset", + "name": "Input parameter", + "outputs": [], + "position": { + "left": 902.6589032437388, + "top": 751.8381451046694 + }, + "tool_id": null, + "tool_state": "{\"parameter_type\": \"text\", \"optional\": false}", + "tool_version": null, + "type": "parameter_input", + "uuid": "d4fceba5-401a-4c03-b848-b1a2d513f2bb", + "when": null, + "workflow_outputs": [] + }, + "6": { + "annotation": "Tabular format\nRow & Column Headers\nRows of cell types\nColumn header \"A_actual\" or similar", + "content_id": null, + "errors": null, + "id": 6, + "input_connections": {}, + "inputs": [ + { + "description": "Tabular format\nRow & Column Headers\nRows of cell types\nColumn header \"A_actual\" or similar", + "name": "Actuals - B" + } + ], + "label": "Actuals - B", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 1958.9237056749462, + "top": 132.50002293187356 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "a1ba19b4-4211-44e3-9271-e95dda2a9cd8", + "when": null, + "workflow_outputs": [] + }, + "7": { + "annotation": "Tabular format\nRow & Column Headers\nRows of cell types\nColumn header \"A_actual\" or similar", + "content_id": null, + "errors": null, + "id": 7, + "input_connections": {}, + "inputs": [ + { + "description": "Tabular format\nRow & Column Headers\nRows of cell types\nColumn header \"A_actual\" or similar", + "name": "Actuals - A" + } + ], + "label": "Actuals - A", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 1959.9827266710402, + "top": 707.3785019357798 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "41e1b171-f457-4273-a6d3-93413476ee5e", + "when": null, + "workflow_outputs": [] + }, + "8": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "errors": null, + "id": 8, + "input_connections": { + "infile1": { + "id": 0, + "output_name": "output" + }, + "infile2": { + "id": 1, + "output_name": "output" + } + }, + "inputs": [], + "label": "Combine Matrices", + "name": "Join", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 296.8750754618946, + "top": 204.5391723166134 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_easyjoin_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"column1\": \"1\", \"column2\": \"1\", \"empty_string_filler\": \"\", \"header\": true, \"ignore_case\": false, \"infile1\": {\"__class__\": \"ConnectedValue\"}, \"infile2\": {\"__class__\": \"ConnectedValue\"}, \"jointype\": \" \", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "e39c4366-2e7e-446c-8685-917bdf69cef2", + "when": null, + "workflow_outputs": [] + }, + "9": { + "annotation": "Extracts the names of the samples/runs and outputs them as columnar values ", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 9, + "input_connections": { + "infile": { + "id": 8, + "output_name": "output" + } + }, + "inputs": [], + "label": "Get phenotype names", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 624.9900825559429, + "top": 319.94702140488863 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": \"NR == 1 {\\n print \\\"Run\\\"\\n print $2\\n print $3\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "f9351ac7-0ea3-42c2-bc38-2d1bb2437107", + "when": null, + "workflow_outputs": [] + }, + "10": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/music_construct_eset/music_construct_eset/0.1.1+galaxy4", + "errors": null, + "id": 10, + "input_connections": { + "exprs_file": { + "id": 8, + "output_name": "output" + }, + "pdata_file": { + "id": 9, + "output_name": "outfile" + } + }, + "inputs": [], + "label": null, + "name": "Construct Expression Set Object", + "outputs": [ + { + "name": "out_txt", + "type": "txt" + }, + { + "name": "out_rds", + "type": "rdata" + } + ], + "position": { + "left": 877.1687807197168, + "top": 198.0847803908937 + }, + "post_job_actions": { + "HideDatasetActionout_rds": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_rds" + }, + "HideDatasetActionout_txt": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_txt" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/music_construct_eset/music_construct_eset/0.1.1+galaxy4", + "tool_shed_repository": { + "changeset_revision": "48f0fb3061b1", + "name": "music_construct_eset", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"annotation\": \"\", \"expdata\": {\"name\": \"\", \"lab\": \"\", \"contact\": \"\", \"title\": \"\", \"abstract\": \"\", \"url\": \"\", \"other\": [{\"__index__\": 0, \"field\": \"notes\", \"comment\": \"Created in Galaxy\"}]}, \"exprs_file\": {\"__class__\": \"ConnectedValue\"}, \"metadata\": [], \"pdata_file\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.1.1+galaxy4", + "type": "tool", + "uuid": "2d97c144-d711-4adb-9471-24a756807a70", + "when": null, + "workflow_outputs": [ + { + "label": null, + "output_name": "out_rds", + "uuid": "5d5f165a-e18a-4138-acbe-e238a7279b55" + } + ] + }, + "11": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/music_deconvolution/music_deconvolution/0.1.1+galaxy4", + "errors": null, + "id": 11, + "input_connections": { + "bulk_eset": { + "id": 10, + "output_name": "out_rds" + }, + "do|celltypes": { + "id": 5, + "output_name": "output" + }, + "do|celltypes_label": { + "id": 3, + "output_name": "output" + }, + "do|samples_label": { + "id": 4, + "output_name": "output" + }, + "scrna_eset": { + "id": 2, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool MuSiC Deconvolution", + "name": "do" + }, + { + "description": "runtime parameter for tool MuSiC Deconvolution", + "name": "do" + }, + { + "description": "runtime parameter for tool MuSiC Deconvolution", + "name": "do" + } + ], + "label": null, + "name": "MuSiC Deconvolution", + "outputs": [ + { + "name": "props", + "type": "input" + }, + { + "name": "out_pdf", + "type": "pdf" + } + ], + "position": { + "left": 1267.94778199929, + "top": 371.9515051001034 + }, + "post_job_actions": {}, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/music_deconvolution/music_deconvolution/0.1.1+galaxy4", + "tool_shed_repository": { + "changeset_revision": "8cd2ecfa2e61", + "name": "music_deconvolution", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"bulk_eset\": {\"__class__\": \"ConnectedValue\"}, \"do\": {\"method\": \"estimateprops\", \"__current_case__\": 0, \"est_methods\": [\"MuSiC\", \"NNLS\"], \"celltypes_label\": {\"__class__\": \"ConnectedValue\"}, \"samples_label\": {\"__class__\": \"ConnectedValue\"}, \"celltypes\": {\"__class__\": \"ConnectedValue\"}, \"phenotype_factors\": \"\", \"phenotype_factors_always_exclude\": \"sampleID,SubjectName\", \"disease_factor\": {\"use\": \"no\", \"__current_case__\": 0}, \"maxyscale\": null}, \"scrna_eset\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.1.1+galaxy4", + "type": "tool", + "uuid": "03f9deb3-5741-4d00-a217-1a998974ce99", + "when": null, + "workflow_outputs": [ + { + "label": null, + "output_name": "out_pdf", + "uuid": "4478cbe6-919e-4c36-85e0-d759b41df6f1" + }, + { + "label": "MuSiC Deconvolution on input dataset(s): Proportion Matrices", + "output_name": "props", + "uuid": "5eeea4d0-88b4-49e2-99b0-66a2ea93119b" + } + ] + }, + "12": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/datamash_transpose/datamash_transpose/1.8+galaxy1", + "errors": null, + "id": 12, + "input_connections": { + "in_file": { + "id": 11, + "output_name": "props" + } + }, + "inputs": [], + "label": "Transpose inferred cell proportions", + "name": "Transpose", + "outputs": [ + { + "name": "out_file", + "type": "input" + } + ], + "position": { + "left": 1531.8056673183476, + "top": 565.5012973015885 + }, + "post_job_actions": { + "HideDatasetActionout_file": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/datamash_transpose/datamash_transpose/1.8+galaxy1", + "tool_shed_repository": { + "changeset_revision": "a513e3fbb4c5", + "name": "datamash_transpose", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"in_file\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.8+galaxy1", + "type": "tool", + "uuid": "b5f254f4-9d79-4d7d-aff6-0cd15646feea", + "when": null, + "workflow_outputs": [] + }, + "13": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy2", + "errors": null, + "id": 13, + "input_connections": { + "input": { + "id": 12, + "output_name": "out_file" + } + }, + "inputs": [], + "label": "B_inferred", + "name": "Advanced Cut", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1957.761482239728, + "top": 225.74002015162358 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy2", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"complement\": \"--complement\", \"cut_type_options\": {\"cut_element\": \"-f\", \"__current_case__\": 0, \"delimiter\": \"\", \"colnames_option\": {\"header\": \"N\", \"__current_case__\": 1, \"list\": [\"2\"]}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy2", + "type": "tool", + "uuid": "136170a9-80cd-4db3-b447-914fb4105281", + "when": null, + "workflow_outputs": [] + }, + "14": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy2", + "errors": null, + "id": 14, + "input_connections": { + "input": { + "id": 12, + "output_name": "out_file" + } + }, + "inputs": [], + "label": "A_inferred", + "name": "Advanced Cut", + "outputs": [ + { + "name": "output", + "type": "tabular" + } + ], + "position": { + "left": 1957.3384095765266, + "top": 812.6421257829013 + }, + "post_job_actions": { + "HideDatasetActionoutput": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_cut_tool/9.3+galaxy2", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"complement\": \"--complement\", \"cut_type_options\": {\"cut_element\": \"-f\", \"__current_case__\": 0, \"delimiter\": \"\", \"colnames_option\": {\"header\": \"N\", \"__current_case__\": 1, \"list\": [\"3\"]}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy2", + "type": "tool", + "uuid": "26a9909b-c922-4fcd-984d-c65f38e53045", + "when": null, + "workflow_outputs": [] + }, + "15": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_multijoin_tool/1.1.1", + "errors": null, + "id": 15, + "input_connections": { + "files": { + "id": 13, + "output_name": "output" + }, + "first_file": { + "id": 6, + "output_name": "output" + } + }, + "inputs": [], + "label": "B_proportions_actual-infer", + "name": "Multi-Join", + "outputs": [ + { + "name": "outfile", + "type": "tabular" + } + ], + "position": { + "left": 2232.77268346831, + "top": 141.67318705895502 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + }, + "RenameDatasetActionoutfile": { + "action_arguments": { + "newname": "B Proportions actual-infer" + }, + "action_type": "RenameDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_multijoin_tool/1.1.1", + "tool_shed_repository": { + "changeset_revision": "ddf54b12c295", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"files\": {\"__class__\": \"ConnectedValue\"}, \"filler\": \"0\", \"first_file\": {\"__class__\": \"ConnectedValue\"}, \"ignore_dups\": false, \"input_header\": false, \"key_column\": \"1\", \"output_header\": false, \"value_columns\": \"2\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.1.1", + "type": "tool", + "uuid": "e2d807fa-6a29-44af-bb69-ce57eca882a5", + "when": null, + "workflow_outputs": [] + }, + "16": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_multijoin_tool/1.1.1", + "errors": null, + "id": 16, + "input_connections": { + "files": { + "id": 14, + "output_name": "output" + }, + "first_file": { + "id": 7, + "output_name": "output" + } + }, + "inputs": [], + "label": "A_proportions_actual-infer", + "name": "Multi-Join", + "outputs": [ + { + "name": "outfile", + "type": "tabular" + } + ], + "position": { + "left": 2242.7184197931474, + "top": 708.8200394313848 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + }, + "RenameDatasetActionoutfile": { + "action_arguments": { + "newname": "A Proportions actual-infer" + }, + "action_type": "RenameDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_multijoin_tool/1.1.1", + "tool_shed_repository": { + "changeset_revision": "ddf54b12c295", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"files\": {\"__class__\": \"ConnectedValue\"}, \"filler\": \"0\", \"first_file\": {\"__class__\": \"ConnectedValue\"}, \"ignore_dups\": false, \"input_header\": false, \"key_column\": \"1\", \"output_header\": false, \"value_columns\": \"2\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.1.1", + "type": "tool", + "uuid": "b5bb7704-9d26-4612-b39f-8829e4230423", + "when": null, + "workflow_outputs": [] + }, + "17": { + "annotation": "", + "content_id": "Cut1", + "errors": null, + "id": 17, + "input_connections": { + "input": { + "id": 15, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "B - Music Results", + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 2491.223282377161, + "top": 141.52165133170172 + }, + "post_job_actions": { + "RemoveTagDatasetActionout_file1": { + "action_arguments": { + "tags": "name:A,name:expression,name:actual,name:pseudobulk,name:metadata" + }, + "action_type": "RemoveTagDatasetAction", + "output_name": "out_file1" + }, + "RenameDatasetActionout_file1": { + "action_arguments": { + "newname": "B - Music Results" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file1" + }, + "TagDatasetActionout_file1": { + "action_arguments": { + "tags": "#Music" + }, + "action_type": "TagDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c1,c2,c3\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "ac9162e7-edb5-4ae4-8e62-e9109885b46d", + "when": null, + "workflow_outputs": [ + { + "label": "B - Music Results", + "output_name": "out_file1", + "uuid": "d495cd0f-623b-4f59-a4e9-94f498c75fa2" + } + ] + }, + "18": { + "annotation": "", + "content_id": "Cut1", + "errors": null, + "id": 18, + "input_connections": { + "input": { + "id": 15, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "B - NNLS Results", + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 2490.9302332467587, + "top": 404.7841542512495 + }, + "post_job_actions": { + "RemoveTagDatasetActionout_file1": { + "action_arguments": { + "tags": "name:A,name:expression,name:metadata,name:actual,name:pseudobulk" + }, + "action_type": "RemoveTagDatasetAction", + "output_name": "out_file1" + }, + "RenameDatasetActionout_file1": { + "action_arguments": { + "newname": "B - NNLS Results" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file1" + }, + "TagDatasetActionout_file1": { + "action_arguments": { + "tags": "#NNLS" + }, + "action_type": "TagDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c1,c2,c4\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "f665fb9b-2a3a-4f90-902d-4930e22e3a8d", + "when": null, + "workflow_outputs": [ + { + "label": "B - NNLS Results", + "output_name": "out_file1", + "uuid": "a81645e1-84b0-4b12-a608-722040f58e11" + } + ] + }, + "19": { + "annotation": "", + "content_id": "Cut1", + "errors": null, + "id": 19, + "input_connections": { + "input": { + "id": 16, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "A - Music Results", + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 2492.952843014892, + "top": 710.0596820067516 + }, + "post_job_actions": { + "RemoveTagDatasetActionout_file1": { + "action_arguments": { + "tags": "#B,#expression,#metadata,#actual,name:pseudobulk" + }, + "action_type": "RemoveTagDatasetAction", + "output_name": "out_file1" + }, + "RenameDatasetActionout_file1": { + "action_arguments": { + "newname": "A - Music Results" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file1" + }, + "TagDatasetActionout_file1": { + "action_arguments": { + "tags": "#Music" + }, + "action_type": "TagDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c1,c2,c3\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "9586bb70-5e0e-4b76-9232-b630cd191722", + "when": null, + "workflow_outputs": [ + { + "label": "A - Music Results", + "output_name": "out_file1", + "uuid": "e9dc2c1e-1c9e-40cc-8288-d1a5bdf651fe" + } + ] + }, + "20": { + "annotation": "", + "content_id": "Cut1", + "errors": null, + "id": 20, + "input_connections": { + "input": { + "id": 16, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "A - NNLS Results", + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 2495.9203268322844, + "top": 946.5684745438588 + }, + "post_job_actions": { + "RemoveTagDatasetActionout_file1": { + "action_arguments": { + "tags": "#B,#expression,#actual,#metadata,name:pseudobulk" + }, + "action_type": "RemoveTagDatasetAction", + "output_name": "out_file1" + }, + "RenameDatasetActionout_file1": { + "action_arguments": { + "newname": "A - NNLS Results" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file1" + }, + "TagDatasetActionout_file1": { + "action_arguments": { + "tags": "#NNLS" + }, + "action_type": "TagDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c1,c2,c4\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "57cb18a1-b876-4f68-9734-8e4b09c226ba", + "when": null, + "workflow_outputs": [ + { + "label": "A - NNLS Results", + "output_name": "out_file1", + "uuid": "9fcde9e0-cdcc-401b-8157-65340694268b" + } + ] + } + }, + "tags": [ + "name:deconv-eval" + ], + "uuid": "8a6eb9a5-adb7-478b-8331-85286c0b6b4c", + "version": 7 +} \ No newline at end of file diff --git a/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-3-process.ga b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-3-process.ga new file mode 100644 index 00000000000000..0ac022eb7c6120 --- /dev/null +++ b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-3-process.ga @@ -0,0 +1,408 @@ +{ + "a_galaxy_workflow": "true", + "annotation": "", + "comments": [ + { + "child_steps": [ + 3, + 4, + 5, + 6, + 7 + ], + "color": "blue", + "data": { + "title": "Pre-process for Violin Plots" + }, + "id": 1, + "position": [ + 530.49978547795, + 210.09999999999997 + ], + "size": [ + 1210.5, + 193.8 + ], + "type": "frame" + }, + { + "child_steps": [ + 2 + ], + "color": "pink", + "data": { + "title": "Pre-process for Scatter Plots" + }, + "id": 0, + "position": [ + 534.49978547795, + 0 + ], + "size": [ + 265, + 190 + ], + "type": "frame" + } + ], + "creator": [ + { + "class": "Person", + "identifier": "0009-0008-9422-6380", + "name": "Morgan Howells" + } + ], + "format-version": "0.1", + "license": "MIT", + "name": "Music Stage 3 - Preprocess Visualisations", + "report": { + "markdown": "\n# Workflow Execution Report\n\n## Workflow Inputs\n```galaxy\ninvocation_inputs()\n```\n\n## Workflow Outputs\n```galaxy\ninvocation_outputs()\n```\n\n## Workflow\n```galaxy\nworkflow_display()\n```\n" + }, + "steps": { + "0": { + "annotation": "", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [ + { + "description": "", + "name": "Cell Proportions" + } + ], + "label": "Cell Proportions", + "name": "Input dataset collection", + "outputs": [], + "position": { + "left": 0, + "top": 94.7219769169077 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": null, \"collection_type\": \"list\"}", + "tool_version": null, + "type": "data_collection_input", + "uuid": "64eb2107-a6ba-4027-bfdb-f7655949848e", + "when": null, + "workflow_outputs": [] + }, + "1": { + "annotation": "", + "content_id": "Remove beginning1", + "errors": null, + "id": 1, + "input_connections": { + "input": { + "id": 0, + "output_name": "output" + } + }, + "inputs": [], + "label": null, + "name": "Remove beginning", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 268.4046102069452, + "top": 97.66992306878801 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Remove beginning1", + "tool_state": "{\"input\": {\"__class__\": \"ConnectedValue\"}, \"num_lines\": \"1\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.0", + "type": "tool", + "uuid": "80e699d9-5174-45bd-a83d-582aba7886c6", + "when": null, + "workflow_outputs": [] + }, + "2": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/nml/collapse_collections/collapse_dataset/5.1.0", + "errors": null, + "id": 2, + "input_connections": { + "input_list": { + "id": 1, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": null, + "name": "Collapse Collection", + "outputs": [ + { + "name": "output", + "type": "input" + } + ], + "position": { + "left": 554.4745439205037, + "top": 40.00405992518502 + }, + "post_job_actions": { + "RenameDatasetActionoutput": { + "action_arguments": { + "newname": "Results Table" + }, + "action_type": "RenameDatasetAction", + "output_name": "output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/nml/collapse_collections/collapse_dataset/5.1.0", + "tool_shed_repository": { + "changeset_revision": "90981f86000f", + "name": "collapse_collections", + "owner": "nml", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"filename\": {\"add_name\": false, \"__current_case__\": 1}, \"input_list\": {\"__class__\": \"ConnectedValue\"}, \"one_header\": false, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "5.1.0", + "type": "tool", + "uuid": "d47040e8-b8ad-4031-b8fa-a96a3c9a6dc9", + "when": null, + "workflow_outputs": [ + { + "label": "Results Table", + "output_name": "output", + "uuid": "16dc3303-7544-448d-8dbe-cad8ec816a45" + } + ] + }, + "3": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.1", + "errors": null, + "id": 3, + "input_connections": { + "input": { + "id": 1, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Compute diff error", + "name": "Compute", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 550.4886789405914, + "top": 253.0889224521158 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.1", + "tool_shed_repository": { + "changeset_revision": "aff5135563c6", + "name": "column_maker", + "owner": "devteam", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"avoid_scientific_notation\": false, \"error_handling\": {\"auto_col_types\": true, \"fail_on_non_existent_columns\": true, \"non_computable\": {\"action\": \"--fail-on-non-computable\", \"__current_case__\": 0}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"ops\": {\"header_lines_select\": \"no\", \"__current_case__\": 0, \"expressions\": [{\"__index__\": 0, \"cond\": \"c3-c2\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}}]}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.1", + "type": "tool", + "uuid": "f8e69ba2-dca8-4649-a35e-4056dff2ed35", + "when": null, + "workflow_outputs": [] + }, + "4": { + "annotation": "", + "content_id": "Cut1", + "errors": null, + "id": 4, + "input_connections": { + "input": { + "id": 3, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "cut diff error", + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 793.4053789557007, + "top": 250.91206479180073 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c1,c4\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "b221ce69-355a-4466-ad3d-114abae5c57c", + "when": null, + "workflow_outputs": [] + }, + "5": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/collection_column_join/collection_column_join/0.0.3", + "errors": null, + "id": 5, + "input_connections": { + "input_tabular": { + "id": 4, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Join subsamples", + "name": "Column join", + "outputs": [ + { + "name": "tabular_output", + "type": "tabular" + } + ], + "position": { + "left": 1032.2427894180169, + "top": 250.397856757557 + }, + "post_job_actions": { + "HideDatasetActiontabular_output": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "tabular_output" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/collection_column_join/collection_column_join/0.0.3", + "tool_shed_repository": { + "changeset_revision": "3ddd99c7efee", + "name": "collection_column_join", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"fill_char\": \"0.0\", \"has_header\": \"0\", \"identifier_column\": \"1\", \"include_outputs\": null, \"input_tabular\": {\"__class__\": \"ConnectedValue\"}, \"old_col_in_header\": true, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "0.0.3", + "type": "tool", + "uuid": "70d62e80-96d4-48f2-b50c-428bc130fe94", + "when": null, + "workflow_outputs": [] + }, + "6": { + "annotation": "", + "content_id": "Remove beginning1", + "errors": null, + "id": 6, + "input_connections": { + "input": { + "id": 5, + "output_name": "tabular_output" + } + }, + "inputs": [], + "label": "Remove header", + "name": "Remove beginning", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 1275.7110707954673, + "top": 250.10661163692373 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Remove beginning1", + "tool_state": "{\"input\": {\"__class__\": \"ConnectedValue\"}, \"num_lines\": \"1\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.0", + "type": "tool", + "uuid": "76010171-9589-413c-8b97-cd4ea4b33fb5", + "when": null, + "workflow_outputs": [] + }, + "7": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/datamash_transpose/datamash_transpose/1.8+galaxy1", + "errors": null, + "id": 7, + "input_connections": { + "in_file": { + "id": 6, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": null, + "name": "Transpose", + "outputs": [ + { + "name": "out_file", + "type": "input" + } + ], + "position": { + "left": 1520.9747796813556, + "top": 267.21583383705683 + }, + "post_job_actions": { + "RenameDatasetActionout_file": { + "action_arguments": { + "newname": "Error Table" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/datamash_transpose/datamash_transpose/1.8+galaxy1", + "tool_shed_repository": { + "changeset_revision": "a513e3fbb4c5", + "name": "datamash_transpose", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"in_file\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.8+galaxy1", + "type": "tool", + "uuid": "a1602d9f-301b-4280-8af8-f0d5b43159eb", + "when": null, + "workflow_outputs": [ + { + "label": "Error Table", + "output_name": "out_file", + "uuid": "02e85528-3327-4ce8-a514-99d7886a0839" + } + ] + } + }, + "tags": [ + "name:deconv-eval" + ], + "uuid": "437303ec-15b1-4635-8241-1ab8901db2ea", + "version": 17 +} \ No newline at end of file diff --git a/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-4-metrics.ga b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-4-metrics.ga new file mode 100644 index 00000000000000..7a2ac6feeeae3a --- /dev/null +++ b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/deconv-eval-stage-4-metrics.ga @@ -0,0 +1,763 @@ +{ + "a_galaxy_workflow": "true", + "annotation": "", + "comments": [ + { + "child_steps": [ + 1, + 3, + 5, + 7 + ], + "color": "orange", + "data": { + "title": "Compute mean predictions" + }, + "id": 0, + "position": [ + 274.2942996890197, + 234.89999999999998 + ], + "size": [ + 960.7, + 230.1 + ], + "type": "frame" + }, + { + "child_steps": [ + 9, + 10, + 11, + 12, + 13, + 14 + ], + "color": "lime", + "data": { + "title": "Pearson Correlation" + }, + "id": 2, + "position": [ + 1282.9942996890195, + 230.89999999999998 + ], + "size": [ + 1423, + 194 + ], + "type": "frame" + }, + { + "child_steps": [ + 2, + 4, + 6, + 8 + ], + "color": "turquoise", + "data": { + "title": "RMSE" + }, + "id": 1, + "position": [ + 1290.0942996890199, + 0 + ], + "size": [ + 1009.8, + 193.5 + ], + "type": "frame" + } + ], + "creator": [ + { + "class": "Person", + "identifier": "0009-0008-9422-6380", + "name": "Morgan Howells" + } + ], + "format-version": "0.1", + "license": "MIT", + "name": "Music Stage 4 - Compute metrics", + "report": { + "markdown": "\n# Workflow Execution Report\n\n## Workflow Inputs\n```galaxy\ninvocation_inputs()\n```\n\n## Workflow Outputs\n```galaxy\ninvocation_outputs()\n```\n\n## Workflow\n```galaxy\nworkflow_display()\n```\n" + }, + "steps": { + "0": { + "annotation": "Tabular dataset with row and column headers\nRows = cell types\nColumns = ACTUAL followed by INFERRED\nNumbers = cell proportions", + "content_id": null, + "errors": null, + "id": 0, + "input_connections": {}, + "inputs": [ + { + "description": "Tabular dataset with row and column headers\nRows = cell types\nColumns = ACTUAL followed by INFERRED\nNumbers = cell proportions", + "name": "Cell Proportions" + } + ], + "label": "Cell Proportions", + "name": "Input dataset", + "outputs": [], + "position": { + "left": 0, + "top": 40.227098634546735 + }, + "tool_id": null, + "tool_state": "{\"optional\": false, \"tag\": \"\"}", + "tool_version": null, + "type": "data_input", + "uuid": "15eab763-91bf-46bb-9d8c-39f0838db5df", + "when": null, + "workflow_outputs": [] + }, + "1": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 1, + "input_connections": { + "singtabop|input": { + "id": 0, + "output_name": "output" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Compute mean", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 294.3214882807069, + "top": 331.8979394126718 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"out_opts\": [\"ignore_nas\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_row_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"matrixapply\", \"__current_case__\": 3, \"matrixapply_func\": {\"vector_op\": \"custom\", \"__current_case__\": 0, \"custom_func\": \"np.mean(vec)\"}, \"dimension\": \"0\"}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "608c84a5-409a-4576-95e2-0fd87a97527f", + "when": null, + "workflow_outputs": [] + }, + "2": { + "annotation": "This computes (actual-expected)^2", + "content_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.0", + "errors": null, + "id": 2, + "input_connections": { + "input": { + "id": 0, + "output_name": "output" + } + }, + "inputs": [], + "label": "Compute squared error", + "name": "Compute", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 1310.1403114290538, + "top": 48.359480304208205 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.0", + "tool_shed_repository": { + "changeset_revision": "6595517c2dd8", + "name": "column_maker", + "owner": "devteam", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"avoid_scientific_notation\": false, \"error_handling\": {\"auto_col_types\": true, \"fail_on_non_existent_columns\": true, \"non_computable\": {\"action\": \"--fail-on-non-computable\", \"__current_case__\": 0}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"ops\": {\"header_lines_select\": \"yes\", \"__current_case__\": 1, \"expressions\": [{\"__index__\": 0, \"cond\": \"pow((c2-c3),2)\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}, \"new_column_name\": \"RSME_p1\"}]}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.0", + "type": "tool", + "uuid": "f71f504b-b04b-4338-8b77-0de7c71b9a78", + "when": null, + "workflow_outputs": [] + }, + "3": { + "annotation": "", + "content_id": "Remove beginning1", + "errors": null, + "id": 3, + "input_connections": { + "input": { + "id": 1, + "output_name": "table" + } + }, + "inputs": [], + "label": "Remove duplicate", + "name": "Remove beginning", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 528.8584919563043, + "top": 327.4180657651557 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Remove beginning1", + "tool_state": "{\"input\": {\"__class__\": \"ConnectedValue\"}, \"num_lines\": \"1\", \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.0", + "type": "tool", + "uuid": "ddf17f1c-bb5c-430e-87b9-3dfcc6544a83", + "when": null, + "workflow_outputs": [] + }, + "4": { + "annotation": "Takes the (actual-inferred)^2 column alone", + "content_id": "Cut1", + "errors": null, + "id": 4, + "input_connections": { + "input": { + "id": 2, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Cut RMSE column", + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 1567.7462488456417, + "top": 39.99290059767014 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + }, + "RenameDatasetActionout_file1": { + "action_arguments": { + "newname": "Squared Error" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c4\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "05e16375-876a-4174-9758-21486c097160", + "when": null, + "workflow_outputs": [ + { + "label": "Squared Error", + "output_name": "out_file1", + "uuid": "f7eb526c-9055-46fd-8787-bb44b61018aa" + } + ] + }, + "5": { + "annotation": "", + "content_id": "Paste1", + "errors": null, + "id": 5, + "input_connections": { + "input1": { + "id": 0, + "output_name": "output" + }, + "input2": { + "id": 3, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": null, + "name": "Paste", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 779.4555781559967, + "top": 274.90632740125545 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Paste1", + "tool_state": "{\"delimiter\": \"T\", \"input1\": {\"__class__\": \"ConnectedValue\"}, \"input2\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.0", + "type": "tool", + "uuid": "49fb862c-456f-4d45-8c8d-409bb2687850", + "when": null, + "workflow_outputs": [] + }, + "6": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 6, + "input_connections": { + "singtabop|input": { + "id": 4, + "output_name": "out_file1" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Average error values", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 1827.729847350446, + "top": 51.13436536865862 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"out_opts\": [\"ignore_nas\"], \"precision\": \"4\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": [\"has_col_names\"], \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"matrixapply\", \"__current_case__\": 3, \"matrixapply_func\": {\"vector_op\": \"mean\", \"__current_case__\": 6}, \"dimension\": \"0\"}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "2f5595ea-62c3-48e3-8242-14b680ea2360", + "when": null, + "workflow_outputs": [] + }, + "7": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "errors": null, + "id": 7, + "input_connections": { + "infile": { + "id": 5, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Add mean column", + "name": "Text reformatting", + "outputs": [ + { + "name": "outfile", + "type": "input" + } + ], + "position": { + "left": 1015.0699198441283, + "top": 316.39936706903825 + }, + "post_job_actions": { + "HideDatasetActionoutfile": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "outfile" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_awk_tool/9.3+galaxy1", + "tool_shed_repository": { + "changeset_revision": "86755160afbf", + "name": "text_processing", + "owner": "bgruening", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"code\": \"{\\n if ($NF != \\\"\\\") {\\n last = $NF\\n } else {\\n $NF = last\\n }\\n print\\n}\", \"infile\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "9.3+galaxy1", + "type": "tool", + "uuid": "4f71a522-3a23-4b49-b0b7-60394939e734", + "when": null, + "workflow_outputs": [] + }, + "8": { + "annotation": "Finally we take the square root of the number to get the RSME", + "content_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.0", + "errors": null, + "id": 8, + "input_connections": { + "input": { + "id": 6, + "output_name": "table" + } + }, + "inputs": [], + "label": "Square root error", + "name": "Compute", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 2079.9296121376447, + "top": 46.283631546923345 + }, + "post_job_actions": { + "RenameDatasetActionout_file1": { + "action_arguments": { + "newname": "RMSE score" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.0", + "tool_shed_repository": { + "changeset_revision": "6595517c2dd8", + "name": "column_maker", + "owner": "devteam", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"avoid_scientific_notation\": false, \"error_handling\": {\"auto_col_types\": true, \"fail_on_non_existent_columns\": true, \"non_computable\": {\"action\": \"--fail-on-non-computable\", \"__current_case__\": 0}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"ops\": {\"header_lines_select\": \"no\", \"__current_case__\": 0, \"expressions\": [{\"__index__\": 0, \"cond\": \"sqrt(c1)\", \"add_column\": {\"mode\": \"R\", \"__current_case__\": 2, \"pos\": \"1\"}}]}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.0", + "type": "tool", + "uuid": "4d5ba3b1-d576-4df5-aadc-38dce824f384", + "when": null, + "workflow_outputs": [] + }, + "9": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.1", + "errors": null, + "id": 9, + "input_connections": { + "input": { + "id": 7, + "output_name": "outfile" + } + }, + "inputs": [], + "label": "Compute differences", + "name": "Compute", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 1302.8785787249262, + "top": 270.9747141621124 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.1", + "tool_shed_repository": { + "changeset_revision": "aff5135563c6", + "name": "column_maker", + "owner": "devteam", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"avoid_scientific_notation\": false, \"error_handling\": {\"auto_col_types\": true, \"fail_on_non_existent_columns\": true, \"non_computable\": {\"action\": \"--fail-on-non-computable\", \"__current_case__\": 0}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"ops\": {\"header_lines_select\": \"no\", \"__current_case__\": 0, \"expressions\": [{\"__index__\": 0, \"cond\": \"c2-c4\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}}, {\"__index__\": 1, \"cond\": \"c3-c4\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}}, {\"__index__\": 2, \"cond\": \"pow(c5, 2)\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}}, {\"__index__\": 3, \"cond\": \"pow(c6, 2)\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}}, {\"__index__\": 4, \"cond\": \"c5*c6\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}}]}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.1", + "type": "tool", + "uuid": "d7cb4739-f3f7-4fe6-a398-1385bf95fc89", + "when": null, + "workflow_outputs": [] + }, + "10": { + "annotation": "", + "content_id": "Cut1", + "errors": null, + "id": 10, + "input_connections": { + "input": { + "id": 9, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": null, + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 1537.7413305085643, + "top": 274.463598028633 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c7,c8,c9\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "bf0d9e4b-3c15-45bd-93ae-631e5e381d86", + "when": null, + "workflow_outputs": [] + }, + "11": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "errors": null, + "id": 11, + "input_connections": { + "singtabop|input": { + "id": 10, + "output_name": "out_file1" + } + }, + "inputs": [ + { + "description": "runtime parameter for tool Table Compute", + "name": "singtabop" + } + ], + "label": "Sum rows", + "name": "Table Compute", + "outputs": [ + { + "name": "table", + "type": "tabular" + } + ], + "position": { + "left": 1775.9669779311103, + "top": 273.7970136025135 + }, + "post_job_actions": { + "HideDatasetActiontable": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "table" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/table_compute/table_compute/1.2.4+galaxy0", + "tool_shed_repository": { + "changeset_revision": "3bf5661c0280", + "name": "table_compute", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"out_opts\": [\"ignore_nas\"], \"precision\": \"6\", \"singtabop\": {\"use_type\": \"single\", \"__current_case__\": 0, \"input\": {\"__class__\": \"ConnectedValue\"}, \"col_row_names\": null, \"adv\": {\"header\": null, \"nrows\": null, \"skipfooter\": null, \"skip_blank_lines\": true}, \"user\": {\"mode\": \"matrixapply\", \"__current_case__\": 3, \"matrixapply_func\": {\"vector_op\": \"sum\", \"__current_case__\": 3}, \"dimension\": \"0\"}}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.2.4+galaxy0", + "type": "tool", + "uuid": "ca6b9888-bc08-46cf-9b4b-200d503d8edc", + "when": null, + "workflow_outputs": [] + }, + "12": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/iuc/datamash_transpose/datamash_transpose/1.8+galaxy1", + "errors": null, + "id": 12, + "input_connections": { + "in_file": { + "id": 11, + "output_name": "table" + } + }, + "inputs": [], + "label": null, + "name": "Transpose", + "outputs": [ + { + "name": "out_file", + "type": "input" + } + ], + "position": { + "left": 2011.8843830036753, + "top": 274.0249893517372 + }, + "post_job_actions": { + "HideDatasetActionout_file": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/iuc/datamash_transpose/datamash_transpose/1.8+galaxy1", + "tool_shed_repository": { + "changeset_revision": "a513e3fbb4c5", + "name": "datamash_transpose", + "owner": "iuc", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"in_file\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.8+galaxy1", + "type": "tool", + "uuid": "888ca713-bb5a-4094-9ab7-e9c0c9c7dc08", + "when": null, + "workflow_outputs": [] + }, + "13": { + "annotation": "", + "content_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.1", + "errors": null, + "id": 13, + "input_connections": { + "input": { + "id": 12, + "output_name": "out_file" + } + }, + "inputs": [], + "label": "Final Pearson correlation", + "name": "Compute", + "outputs": [ + { + "name": "out_file1", + "type": "input" + } + ], + "position": { + "left": 2250.7297214130617, + "top": 272.12774280634903 + }, + "post_job_actions": { + "HideDatasetActionout_file1": { + "action_arguments": {}, + "action_type": "HideDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "toolshed.g2.bx.psu.edu/repos/devteam/column_maker/Add_a_column1/2.1", + "tool_shed_repository": { + "changeset_revision": "aff5135563c6", + "name": "column_maker", + "owner": "devteam", + "tool_shed": "toolshed.g2.bx.psu.edu" + }, + "tool_state": "{\"avoid_scientific_notation\": false, \"error_handling\": {\"auto_col_types\": true, \"fail_on_non_existent_columns\": true, \"non_computable\": {\"action\": \"--fail-on-non-computable\", \"__current_case__\": 0}}, \"input\": {\"__class__\": \"ConnectedValue\"}, \"ops\": {\"header_lines_select\": \"no\", \"__current_case__\": 0, \"expressions\": [{\"__index__\": 0, \"cond\": \"c3/sqrt(c1*c2)\", \"add_column\": {\"mode\": \"\", \"__current_case__\": 0, \"pos\": \"\"}}]}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "2.1", + "type": "tool", + "uuid": "63ae97d0-8f41-4a08-97e2-a1504852c7be", + "when": null, + "workflow_outputs": [] + }, + "14": { + "annotation": "", + "content_id": "Cut1", + "errors": null, + "id": 14, + "input_connections": { + "input": { + "id": 13, + "output_name": "out_file1" + } + }, + "inputs": [], + "label": "Cut Pearson column", + "name": "Cut", + "outputs": [ + { + "name": "out_file1", + "type": "tabular" + } + ], + "position": { + "left": 2485.919503078627, + "top": 271.430832664332 + }, + "post_job_actions": { + "RenameDatasetActionout_file1": { + "action_arguments": { + "newname": "Pearson Correlation" + }, + "action_type": "RenameDatasetAction", + "output_name": "out_file1" + } + }, + "tool_id": "Cut1", + "tool_state": "{\"columnList\": \"c4\", \"delimiter\": \"T\", \"input\": {\"__class__\": \"ConnectedValue\"}, \"__page__\": null, \"__rerun_remap_job_id__\": null}", + "tool_version": "1.0.2", + "type": "tool", + "uuid": "fa0ba30d-7826-48f1-9325-960b4f0c778b", + "when": null, + "workflow_outputs": [ + { + "label": "Pearson Correlation", + "output_name": "out_file1", + "uuid": "73db7d72-1eab-483f-b9c3-547b317821be" + } + ] + } + }, + "tags": [ + "name:deconv-eval" + ], + "uuid": "009c84f5-d318-46a4-a6f1-2996351e8310", + "version": 29 +} \ No newline at end of file diff --git a/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/index.md b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/index.md new file mode 100644 index 00000000000000..e092e0ae66ddd4 --- /dev/null +++ b/topics/single-cell/tutorials/bulk-deconvolution-evaluate/workflows/index.md @@ -0,0 +1,3 @@ +--- +layout: workflow-list +--- diff --git a/topics/single-cell/tutorials/bulk-music-4-compare/tutorial.md b/topics/single-cell/tutorials/bulk-music-4-compare/tutorial.md index f6e8044bfaaddb..9f0735591676c5 100644 --- a/topics/single-cell/tutorials/bulk-music-4-compare/tutorial.md +++ b/topics/single-cell/tutorials/bulk-music-4-compare/tutorial.md @@ -1,7 +1,7 @@ --- layout: tutorial_hands_on subtopic: deconvo -priority: 4 +priority: 2 title: Comparing inferred cell compositions using MuSiC deconvolution zenodo_link: https://zenodo.org/record/7319925 tags: