Mercurial > repos > immport-devteam > fcs_summary
changeset 1:d2749aa59d20 draft default tip
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/fcs_summary commit 72efaa6d006ddda6c8eed10ec9ba541cbdecf3a8"
author | azomics |
---|---|
date | Mon, 22 Jun 2020 17:33:38 -0400 |
parents | 1d926a8daa92 |
children | |
files | FCSstats.R FCSstats.xml fcs_summary/FCSstats.R fcs_summary/FCSstats.xml fcs_summary/test-data/summary.txt fcs_summary/test-data/testfcs1.fcs test-data/summary.txt test-data/testfcs1.fcs |
diffstat | 8 files changed, 170 insertions(+), 170 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/FCSstats.R Mon Jun 22 17:33:38 2020 -0400 @@ -0,0 +1,58 @@ +#!/usr/bin/Rscript --vanilla +# FCS Summary Statistic Module for Galaxy +# FlowCore +###################################################################### +# Copyright (c) 2016 Northrop Grumman. +# All rights reserved. +###################################################################### +# +# Version 1 +# Cristel Thomas +# +# + +library(flowCore) + +getMarkerNames <- function(input, output) { + fcs <- read.FCS(input, transformation=F) + + ## marker names + channels <- colnames(fcs) + markers <- as.vector(pData(parameters(fcs))$desc) + df <- data.frame(channels, markers) + fcs_summary <- capture.output(summary(fcs)) + fcs_dim <- capture.output(dim(fcs)) + fcs_markers <- capture.output(df) + + + sink(output) + cat(fcs_dim, sep="\n") + cat("\n\n=========================\n") + cat("== FCS SUMMARY ==\n") + cat("=========================\n") + cat(fcs_summary, sep="\n") + cat("\n\n=========================\n") + cat("== MARKERS IN FCS ==\n") + cat("=========================\n") + cat(fcs_markers, sep="\n") + sink() +} + +checkFCS <- function(input_file, output_file) { + isValid <- F + # Check file beginning matches FCS standard + tryCatch({ + isValid <- isFCSfile(input_file) + }, error = function(ex) { + print (paste(" ! Error in isFCSfile", ex)) + }) + + if (isValid) { + getMarkerNames(input_file, output_file) + } else { + print (paste(input_file, "does not meet FCS standard")) + } +} + +args <- commandArgs(trailingOnly = TRUE) +checkFCS(args[1], args[2])
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/FCSstats.xml Mon Jun 22 17:33:38 2020 -0400 @@ -0,0 +1,72 @@ +<tool id="get_fcs_stats" name="Get summary" version="1.0+galaxy0"> + <description>of FCS files</description> + <requirements> + <requirement type="package" version="1.42.0">bioconductor-flowcore</requirement> + </requirements> + <stdio> + <exit_code range="2:" level="fatal" description="See stderr for more details." /> + </stdio> + <command><![CDATA[ + Rscript --slave --vanilla '$__tool_directory__/FCSstats.R' '${input}' '${output}' + ]]> + </command> + <inputs> + <param format="fcs" name="input" type="data" label="FCS file"/> + </inputs> + <outputs> + <data format="txt" name="output" label="Summary statisitics of ${input.name}"/> + </outputs> + <tests> + <test> + <param name="input" value="testfcs1.fcs"/> + <output name="output" file="summary.txt" compare="sim_size"/> + </test> + </tests> + <help><![CDATA[ + This tool generates a summary of a FCS file and list of markers. + +----- + +**Input file** + +This tool uses valid FCS files as input. + +**Output file** + +FCS file summary includes number of events, list of markers and parameters, and summary statistics for each. + +----- + +**Example** + +*Output*:: + + events parameters + 20000 6 + + + ========================= + == FCS SUMMARY == + ========================= + FSC-H SSC-H FL1-H FL2-H FL3-H FL4-H + Min. 261 23 0.0 0.0 0.0 0.0 + 1st Qu. 371 120 129.0 153.0 257.0 252.0 + Median 432 196 206.0 237.0 432.0 331.0 + Mean 512 476 284.8 236.7 433.2 372.3 + 3rd Qu. 657 1023 499.0 297.0 628.0 510.0 + Max. 1023 1023 729.0 925.0 1023.0 1023.0 + + + ========================= + == MARKERS IN FCS == + ========================= + channels markers + 1 FSC-H Forward Scatter + 2 SSC-H Side Scatter + 3 FL1-H FITC CD4 + 4 FL2-H PE CD25 + 5 FL3-H PP CD3 + 6 FL4-H APC CD45RA + ]]> + </help> +</tool>
--- a/fcs_summary/FCSstats.R Mon Feb 27 12:53:11 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -# FCS Summary Statistic Module for Galaxy -# FlowCore -###################################################################### -# Copyright (c) 2016 Northrop Grumman. -# All rights reserved. -###################################################################### -# -# Version 1 -# Cristel Thomas -# -# - -library(flowCore) - -getMarkerNames <- function(input, output) { - fcs <- read.FCS(input, transformation=F) - - ## marker names - channels <- colnames(fcs) - markers <- as.vector(pData(parameters(fcs))$desc) - df <- data.frame(channels, markers) - fcs_summary <- capture.output(summary(fcs)) - fcs_dim <- capture.output(dim(fcs)) - fcs_markers <- capture.output(df) - - - sink(output) - cat(fcs_dim, sep="\n") - cat("\n\n=========================\n") - cat("== FCS SUMMARY ==\n") - cat("=========================\n") - cat(fcs_summary, sep="\n") - cat("\n\n=========================\n") - cat("== MARKERS IN FCS ==\n") - cat("=========================\n") - cat(fcs_markers, sep="\n") - sink() -} - -checkFCS <- function(input_file, output_file) { - isValid <- F - # Check file beginning matches FCS standard - tryCatch({ - isValid = isFCSfile(input_file) - }, error = function(ex) { - print (paste(" ! Error in isFCSfile", ex)) - }) - - if (isValid) { - getMarkerNames(input_file, output_file) - } else { - print (paste(input_file, "does not meet FCS standard")) - } -} - -args <- commandArgs(trailingOnly = TRUE) -checkFCS(args[2], args[3])
--- a/fcs_summary/FCSstats.xml Mon Feb 27 12:53:11 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -<tool id="get_fcs_stats" name="Get summary" version="1.0"> - <description>of FCS files.</description> - <requirements> - <requirement type="package" version="3.3.0">r</requirement> - <requirement type="package" version="1.38.2">bioconductor-flowcore</requirement> - </requirements> - <stdio> - <exit_code range="2:" level="fatal" description="See stderr for more details." /> - </stdio> - <command><![CDATA[ - Rscript --slave --vanilla $__tool_directory__/FCSstats.R --args "${input}" "${output}" - ]]> - </command> - <inputs> - <param format="fcs" name="input" type="data" label="FCS file"/> - </inputs> - <outputs> - <data format="txt" name="output" label="Summary statisitics of ${input.name}"/> - </outputs> - <tests> - <test> - <param name="input" value="testfcs1.fcs"/> - <output name="output" file="summary.txt"/> - </test> - </tests> - <help><![CDATA[ - This tool generates a summary of a FCS file and list of markers. - ------ - -**Input file** - -This tool uses valid FCS files as input. - -**Output file** - -FCS file summary includes number of events, list of markers and parameters, and summary statistics for each. - ------ - -**Example** - -*Output*:: - - events parameters - 20000 6 - - - ========================= - == FCS SUMMARY == - ========================= - FSC-H SSC-H FL1-H FL2-H FL3-H FL4-H - Min. 261 23 0.0 0.0 0.0 0.0 - 1st Qu. 371 120 129.0 153.0 257.0 252.0 - Median 432 196 206.0 237.0 432.0 331.0 - Mean 512 476 284.8 236.7 433.2 372.3 - 3rd Qu. 657 1023 499.0 297.0 628.0 510.0 - Max. 1023 1023 729.0 925.0 1023.0 1023.0 - - - ========================= - == MARKERS IN FCS == - ========================= - channels markers - 1 FSC-H Forward Scatter - 2 SSC-H Side Scatter - 3 FL1-H FITC CD4 - 4 FL2-H PE CD25 - 5 FL3-H PP CD3 - 6 FL4-H APC CD45RA - ]]> - </help> -</tool>
--- a/fcs_summary/test-data/summary.txt Mon Feb 27 12:53:11 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ - events parameters - 10 13 - - -========================= -== FCS SUMMARY == -========================= - FSC-A FSC-H SSC-A SSC-H APC-A APC-H7-A FITC-A PerCP-Cy5-5-A -Min. 9081 8811 10500 10120 -76.00 168.0 55.51 19.11 -1st Qu. 22040 17990 35210 33090 -50.92 432.4 219.50 69.84 -Median 55080 50380 60520 56110 123.90 1412.0 312.60 190.20 -Mean 69950 58340 67560 57540 553.30 3196.0 758.60 1227.00 -3rd Qu. 100700 90200 100500 71740 232.20 3797.0 1198.00 678.40 -Max. 170500 136000 138000 114000 2955.00 12540.0 2421.00 9038.00 - V450-A V500-A PE-A PE-Cy7-A Time -Min. -7.68 7.68 -12.74 -11.76 0.000 -1st Qu. 147.80 315.80 6.86 46.55 0.025 -Median 638.90 5000.00 168.10 196.50 0.150 -Mean 1956.00 7151.00 180.30 434.20 0.130 -3rd Qu. 1275.00 11500.00 252.10 766.90 0.200 -Max. 12950.00 24690.00 620.30 1694.00 0.300 - - -========================= -== MARKERS IN FCS == -========================= - Channels Markers -1 FSC-A <NA> -2 FSC-H <NA> -3 SSC-A <NA> -4 SSC-H <NA> -5 APC-A CD127 -6 APC-H7-A CD45RO -7 FITC-A LIVE -8 PerCP-Cy5-5-A CD4 -9 V450-A CD3 -10 V500-A HLA-DR -11 PE-A CD25 -12 PE-Cy7-A CCR4 -13 Time <NA>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/summary.txt Mon Jun 22 17:33:38 2020 -0400 @@ -0,0 +1,40 @@ + events parameters + 10 13 + + +========================= +== FCS SUMMARY == +========================= + FSC-A FSC-H SSC-A SSC-H APC-A APC-H7-A FITC-A PerCP-Cy5-5-A +Min. 9081 8811 10500 10120 -76.00 168.0 55.51 19.11 +1st Qu. 22040 17990 35210 33090 -50.92 432.4 219.50 69.84 +Median 55080 50380 60520 56110 123.90 1412.0 312.60 190.20 +Mean 69950 58340 67560 57540 553.30 3196.0 758.60 1227.00 +3rd Qu. 100700 90200 100500 71740 232.20 3797.0 1198.00 678.40 +Max. 170500 136000 138000 114000 2955.00 12540.0 2421.00 9038.00 + V450-A V500-A PE-A PE-Cy7-A Time +Min. -7.68 7.68 -12.74 -11.76 0.000 +1st Qu. 147.80 315.80 6.86 46.55 0.025 +Median 638.90 5000.00 168.10 196.50 0.150 +Mean 1956.00 7151.00 180.30 434.20 0.130 +3rd Qu. 1275.00 11500.00 252.10 766.90 0.200 +Max. 12950.00 24690.00 620.30 1694.00 0.300 + + +========================= +== MARKERS IN FCS == +========================= + Channels Markers +1 FSC-A <NA> +2 FSC-H <NA> +3 SSC-A <NA> +4 SSC-H <NA> +5 APC-A CD127 +6 APC-H7-A CD45RO +7 FITC-A LIVE +8 PerCP-Cy5-5-A CD4 +9 V450-A CD3 +10 V500-A HLA-DR +11 PE-A CD25 +12 PE-Cy7-A CCR4 +13 Time <NA>