Skip to content
This repository has been archived by the owner on Oct 31, 2024. It is now read-only.
/ grmpy Public archive

Python package for the simulation and estimation of generalized Roy model

License

Notifications You must be signed in to change notification settings

OpenSourceEconomics/grmpy

Repository files navigation

grmpy

grmpy is an open-source Python package for the simulation and estimation of the generalized Roy model. It serves as a teaching tool to promote the conceptual framework of the generalized Roy model, illustrate a variety of issues in the econometrics of policy evaluation, and showcases basic software engineering practices.
Marginal Treatment Effects (MTE) can be estimated based on a parametric normal model or, alternatively, via the semiparametric method of Local Instrumental Variables (LIV).

You can install grmpy either via pip

$ pip install grmpy

Or download it directly from our GitHub repository and install the package in editable mode

$ git clone https://github.com/OpenSourceEconomics/grmpy.git
$ pip install -e .

Quick Start

Initialization File

grmpy relies on an "initialization.yml" file (referred to as ìnit_file below) to perform both simulation and estimation. For example, check out these two init_files for simulation and parametric estimation as well as a semiparametric estimation setup.

Below you'll find some example code you can copy to jump-start your project.

Simulation

import grmpy

# Specify the initilaization file you want to use, e.g.:
init_file = "ProjectFiles/simulation.yml"

data = grmpy.simulate(init_file)

Estimation

import grmpy

# Specify the initilaization file you want to use, e.g.:
init_file = "ProjectFiles/estimation.yml"

# Parametric Normal Model
rslt = grmpy.fit(init_file, semipar=False)
grmpy.plot_mte(rslt, init_file, color="blue", semipar=False, save_plot="MTE_par.png")

# Local Instrumental Variables (Semiparametric Model)
rslt = grmpy.fit(init_file, semipar=True)
grmpy.plot_mte(rslt, init_file, color="orange", semipar=True, nboot= 250, save_plot="MTE_semipar.png")

Please visit our online documentation for tutorials and more.


docs passing license code style