slowkow/harmonypy

Runharmony with R and run_harmony with Python produced different results

zy-fang opened this issue · 1 comments

Hi! Thank you for porting harmony into python -- it's very useful.

I found that Runharmony with R and run_harmony with Python produced different results using the same principal component and meta data. Is that normal?And it feels like R is going to be a little bit better.

Zhaoyu

Harmony is not a deterministic algorithm, so each run with a different random seed will produce slightly different results.

When I ported from R to Python, I manually inspected the intermediate state of each variable in Python and confirmed that it matches with the intermediate state in R. While I can always be mistaken, I believe that the results between R and Python should be very similar or nearly identical.

If you have any concerns, please consider sharing a reproducible example to facilitate discussion and potential bug fixes. Thanks!