Ninja Pumpkin Mutants

    flusso

    0.1.2 • Public • Published

    Build Status NPM version

    flusso

    Dead simple FCS (Flow Cytometry Standard) file parsing utility.

    Install

    For developers

    Checkout the repository and install all the dependencies as follows. yarn is our preferred dependency manager:

    $ git clone https://github.com/hammerlab/flusso.git
    $ cd flusso
    $ yarn
    $ yarn link # so that we run as a command

    Use

    Command Line Interface (CLI)

    Once you install flusso, you should be able to invoke the CLI as follows:

    $ flusso --help
    Usage: flusso [options] [command]
    
    Options:
      -V, --version       output the version number
      -h, --help          output usage information
    
    Commands:
      json <fcsFile>      converts the FCS file into JSON format
      tsv <fcsFile>       converts the FCS file into TSV format
      validate <fcsFile>  parses the file and exits
      *                   prints help and exits

    Validate

    $ flusso validate test/testfile-Donor42-CD4-CD8.fcs \
        && echo "looks good"
    looks good
    
    $ touch /tmp/empty.fcs
    $ flusso validate /tmp/empty.fcs 2> /dev/null \
        || echo "looks bad"
    looks bad

    Export as JSON

    Recommended companion tool: jq.

    $ flusso json test/testfile-Donor42-CD4-CD8.fcs | jq ".HEADER"
    {
      "version": "FCS3.0",
      "_": "    ",
      "textBegin": 256,
      "textEnd": 3744,
      "dataBegin": 3748,
      "dataEnd": 13203747,
      "analysisBegin": 0,
      "analysisEnd": 0
    }
    
    $ flusso json test/testfile-Donor42-CD4-CD8.fcs | jq ".TEXT._TOT"
    "300000"
    
    $ flusso json test/testfile-Donor42-CD4-CD8.fcs | jq ".DATA | length"
    300000
    
    $ flusso json test/testfile-Donor42-CD4-CD8.fcs | jq ".DATA[0]"
    [
      79785.59375,
      28077.822265625,
      18567.943359375,
      2307.93359375,
      384.65557861328125,
      379.2283630371094,
      174.4023895263672,
      6579.56591796875,
      45.95596694946289,
      103.18415069580078,
      331
    ]

    Export as TSV

    This will eat all the metadata expect the parameter names, but is useful for streamlining the analysis across multiple files. Recommended companion tool: datamash.

    $ flusso tsv test/testfile-Donor42-CD4-CD8.fcs | head -5
    FileName	FSC-A	SSC-A	FITC-A	PE-A	PerCP-Cy5.5-A	PE-Cy7-A	APC-A	APC-Cy7-A	V450-A	V500-A	Time
    test/testfile-Donor42-CD4-CD8.fcs	79785.59375	28077.822265625	18567.943359375	2307.93359375	384.65557861328125	379.2283630371094	174.4023895263672	6579.56591796875	45.95596694946289	103.18415069580078	331
    test/testfile-Donor42-CD4-CD8.fcs	75418.953125	20048.900390625	16241.6923828125	1972.1231689453125	366.3386535644531	495.91400146484375	198.55947875976562	6481.75927734375	34.683746337890625	102.31705474853516	342
    test/testfile-Donor42-CD4-CD8.fcs	73400.875	21521.71875	8060.80712890625	1018.2857666015625	24166.818359375	4319.404296875	101.34193420410156	804.2542724609375	29.481185913085938	117.05764770507812	344
    test/testfile-Donor42-CD4-CD8.fcs	75060.1796875	27572.412109375	14014.4892578125	1778.7777099609375	36766.83203125	6424.49462890625	129.62339782714844	657.544189453125	67.63330841064453	45.088871002197266	351
    test/testfile-Donor42-CD4-CD8.fcs	69146	22488.4453125	16298	1831.693359375	306.6390380859375	160.78196716308594	103.69872283935547	5276.26171875	47.69015121459961	73.70296478271484	354
    
    $ flusso tsv test/testfile-Donor42-CD4-CD8.fcs | datamash -H mean 4 count 1
    mean(FITC-A)	count(FileName)
    15294.586121011	300000

    Install

    npm i flusso

    DownloadsWeekly Downloads

    1

    Version

    0.1.2

    License

    Apache-2.0

    Unpacked Size

    13.4 MB

    Total Files

    10

    Last publish

    Collaborators

    • armish