scCODA icon indicating copy to clipboard operation
scCODA copied to clipboard

Allow set random seed for reproducibility in `CompositionalAnalysis` objects

Open yihming opened this issue 2 years ago • 1 comments

Usage

In sccoda.util.comp_ana.CompositionalAnalysis, add seed optional parameter:

  • If not specifying a value, it behaves as normal.
  • If specifying a value as the following:
from sccoda.util import comp_ana as mod
...
model_salm = mod.CompositionalAnalysis(data_salm, formula="Condition", reference_cell_type="Goblet", seed=0) 

This code reproduces the same result in different execution times.

yihming avatar Mar 03 '22 20:03 yihming

Hi, thanks for this pull request! I am unsure though, whether this change is necessary. As far as I know, it is also possible to get consistent results by running

tf.random.set_seed(0)
model_salm = mod.CompositionalAnalysis(data_salm, formula="Condition", reference_cell_type="Goblet")

Are you aware of any situations where this strategy could fail to produce reproducible results?

johannesostner avatar Mar 04 '22 07:03 johannesostner