amices / mice

Multivariate Imputation by Chained Equations
https://amices.org/mice/
GNU General Public License v2.0
433 stars 107 forks source link

Futuremice #504

Closed gerkovink closed 1 year ago

gerkovink commented 1 year ago

This PR introduces futuremice(), a straightforward and flexibly scaleable approach to parallelising the mice() algorithm. futuremice() is much more robust than parlmice() and works on any machine and any operating system. Furthermore, results with futuremice() are fully reproducible when the seed of the utilised furrr::future_map() process is fixed.

stefvanbuuren commented 1 year ago

Thom, Gerko,

Nice and elegant implementation of parallel imputation by future. Worked out-of-the-box. A great addition to mice().

I changed one dead link in the documentation to https://www.gerkovink.com/miceVignettes/futuremice/Vignette_futuremice.html. I don't know whether that is the correct version.

Should we start retiring parlmice()?

gerkovink commented 1 year ago

I believe parlmice() is now superseded, but can be safely left for backwards compatibility of mice.

thomvolker commented 1 year ago

Stef, thanks for merging. I agree with Gerko: I think parlmice can be superseded, but this information hasn't been added yet.

Apart from that, it would be good to look at commit 836e2f01883e9a4fdd5cc713b968f15fe11e1562. Do you remember that we discussed whether the post-processing command behaves as it should? In this commit, I made a change to the sampler such that post-processing behaves correctly I believe.

However, I later reversed this commit, because (1) it didn't belong in this PR anyway, and (2) it would be good to first double check what the behavior actually should be. I think the PR to the reversal is still floating around somewhere, but didn't make it to this PR. Perhaps you can reinstate the old state of the sampler.

Best, Thom