The Iterative Proportional Fitting (IPF) algorithm operates on count data. This package offers implementations for several algorithms that extend this to nested structures: 'parent' and 'child' items for both of which constraints can be provided. The fitting algorithms include Iterative Proportional Updating https://trid.trb.org/view/881554, Hierarchical IPF doi:10.3929/ethz-a-006620748 , Entropy Optimization https://trid.trb.org/view/881144, and Generalized Raking doi:10.2307/2290793 . Additionally, a number of replication methods is also provided such as 'Truncate, replicate, sample' doi:10.1016/j.compenvurbsys.2013.03.004 .

Details

To use this package, you need to:

  1. Specify your fitting problem with ml_problem()

  2. Optionally, convert the fitting problem to a structure that can be processed by the algorithms with flatten_ml_fit_problem(); this is helpful if you want to run the same fitting problem with multiple algorithms and compare results.

  3. Compute weights with one of the algorithms provided in this package with ml_fit() or one of the specialized functions

  4. Analyze weights or residuals, e.g. with compute_margins()

Author

Maintainer: Amarin Siripanich amarin.siri@gmail.com (Contributed `ml_replicate()`)

Authors:

  • Kirill Müller (Creator of the package) [copyright holder]

Other contributors:

  • Kay W. Axhausen (Advisor of Kirill Müller) [thesis advisor]

  • Taha H. Rashidi (Advisor of Amarin Siripanich) [thesis advisor]