This is a package for discrete choice model estimation and simulation, with an emphasis on large choice sets and behavioral refinements to multinomial models. Most of these models are not available in Statsmodels or Scikit-learn.
The underlying estimation routines come from two main places: (1) the urbanchoice
codebase, which has been moved into ChoiceModels, and (2) Timothy Brathwaite's PyLogit package, which handles more flexible model specifications.
Clone this repository and run python setup.py develop
.
This required package should also be installed the same way:
choicemodels.tools.MergedChoiceTable()
- Generates a merged long-format table of choosers and alternatives.
choicemodels.MultinomialLogit()
- Fits MNL models, using either the ChoiceModels or PyLogit estimation engines.
chociemodels.MultinomialLogitResults()
- Stores and reports fitted MNL models.
There's documentation in these classes' docstrings, and a usage demo in a Jupyter notebook.
https://github.com/udst/choicemodels/blob/master/choicemodels/tools/interaction.py https://github.com/udst/choicemodels/blob/master/choicemodels/mnl.py
https://github.com/udst/choicemodels/blob/master/notebooks/Destination-choice-models-02.ipynb