almost-matching-exactly / DAME-FLAME-Python-Package

A Python Package providing two algorithms, DAME and FLAME, for fast and interpretable treatment-control matches of categorical data
https://almost-matching-exactly.github.io/DAME-FLAME-Python-Package/
MIT License
56 stars 14 forks source link

ENH: Move to 0-indexing? #48

Closed nickeubank closed 1 year ago

nickeubank commented 2 years ago

Don't get me wrong, I'm a social scientist and prefer 1-indexing (e.g. love me some Julia!). But Python is a zero-indexed language, so maybe move everything to zero indexing to address #32 and #47 ? Note will require change in output message header, rollback of #33, and changing early_stop_iterations keyword.

nehargupta commented 1 year ago

@haoningjiang If you could look into this, would be a huge help! Please do ask questions here or on slack.

nehargupta commented 1 year ago

@haoningjiang Thanks for looking into this! The "iteration counter" is named h in the dame_algorithm.py and flame_algorithm.py files (feel free to rename this variable if you want). Having it start at 0 (when h is initialized in dame_algorithm.py and flame_algorithm.py) should be fine -- but definitely do some testing to make sure changes have been made at all necessary places...paying attention to any of the linked lines of code below

https://github.com/almost-matching-exactly/DAME-FLAME-Python-Package/blob/master/dame_flame/dame_algorithm.py#L289 https://github.com/almost-matching-exactly/DAME-FLAME-Python-Package/blob/master/dame_flame/dame_algorithm.py#L300 https://github.com/almost-matching-exactly/DAME-FLAME-Python-Package/blob/master/dame_flame/flame_algorithm.py#L260 https://github.com/almost-matching-exactly/DAME-FLAME-Python-Package/blob/master/dame_flame/flame_algorithm.py#L181 https://github.com/almost-matching-exactly/DAME-FLAME-Python-Package/blob/master/dame_flame/flame_dame_helpers.py#L206