MERFISHtools implement a Bayesian framework for accurately predicting gene or transcript expression from MERFISH data.On top, differential expression analysis can be performed for two or multiple conditions, including credible intervals for fold change and coefficient of variation, and controlling the expected false discovery rate.
If you use MERFISHtools, please cite our paper
Köster, Johannes, Myles Brown, X. Shirley Liu. “A Bayesian Model for Single Cell Transcript Expression Analysis on MERFISH Data.” Bioinformatics 2018. https://doi.org/10.1093/bioinformatics/bty718.
MERFISHtools can be installed and updated easily viaBioconda.
For usage instructions at the command line, please issue
merfishtools --help
A typical MERFISHtools workflow is as follows.
Transcript expressions are estimated from raw MERFISH data via
merfishtools exp --threads 8 codebook.txt data.txt --estimate estimates.txt > expression.txt
See
merfishtools exp --help
for additional parameters.
The filecodebook.txt
is a MERFISH codebook (example), consisting of tab separated columns:
The last column has to contain a 1 if a feature is expressed (e.g. it is a transcript or gene), and a 0 if it is a misidentification probe (see Chen et al. Science 2015). Note that these probes are important for MERFISHtools to estimate noise rates and provide more accurate predictions.
The filedata.txt
(example) contains MERFISH readouts in tab-separated format. The expected columns are
When using MERFISH protocol v2, you will have a binary file format containing the readouts. Merfishtools will detect this automatically.
Results are provided as probability mass functions (PMF) at STDOUT, in the format
Further, the optional flag--estimate estimates.txt
results in a table with expression estimates of the form:
In case of two conditions, you can issue
merfishtools diffexp --threads 8 expression1.txt expression2.txt > diffexp.txt
to calculate differentially expressed transcripts.See
merfishtools diffexp --help
for additional parameters.
The filesexpression1.txt
andexpression2.txt
(example) contain the PMFs of the two conditions to compare, and are obtained by running step 1 on the data for each condition.
Results are provided as tab separated table at STDOUT (here piped into the filediffexp.txt
) with columns
In case of more than two conditions, you can issue
merfishtools multidiffexp --threads 8 expression1.txt expression2.txt expression3.txt ... > diffexp.txt
to calculate differentially expressed transcripts. Here, the coefficient of variation over the condition means is used as measure for differential expression. See
merfishtools multidiffexp --help
for additional parameters.
The filesexpression1.txt
andexpression2.txt
, … (example) contain the PMFs of the conditions to compare, and are obtained by running step 1 on the data for each condition.
Results are provided as tab separated table at STDOUT (here piped into the filediffexp.txt
) with columns