DIME Analytics has developed the
ietoolkit package for Stata to simplify the process of data management and analysis in impact evaluations. Along with
iefieldkit, this package allows research teams to perform highly repetitive but important processes in primary data collection, with an aim to promote high quality reproducible research.
- DIME Analytics has conducted a bootcamp on reproducible research which establishes standard best practices in development research.
- Stata coding practices lists common best practices for writing reproducible and replicable Stata do-files.
- You can contribute to improving future updates of
ietoolkitusing this Github repository maintained by DIME Analytics.
- To install the package, type
ssc install ietoolkitin the Stata command box.
iefoldersets up a standardized (common) structure for all folders that are shared as part of a project, that is the project folder. It creates master do-files that link to all sub-folders (folders within another folder), so that the project folder is automatically updated every time more data or files are shared from the field teams. This command helps create reproducible research.
iegitaddmdallows members of the research team to share a template (outline) folder for a new project on GitHub even if it is empty. This command creates a placeholder that can be updated later when a file is added to that folder. For example, templates often include an output folder where the results of data analysis will be stored. This folder remains empty until the data set is cleaned to prepare it for analysis. Using this command, two people, say A and B, can still share this folder with each other on GitHub.
ieboilstartstandardizes the version, capacity (in terms of the number of observations it can store in memory), and other Stata settings for all users in a project. This command should be run (typed) at the top of all do-files that are shared between members of the research team. Such a code is called a boilerplate code, since it standardizes the code at the beginning for all do-files.
An example of a code that uses these commands is given below:
ieboilstart, version(14.0) //Standardizes the version for everyone. global folder "C:/Users/username/DropBox/ProjectABC" iefolder new project, projectfolder("$folder") //Sets up the main structure iegitaddmd, folder ("$folder") //Makes sure users can share the main folder on GitHub even if it is empty
iematchis a command which can be used for matching observations in one group to observations in another group which are the closest in terms of a particular characteristic.
For example, consider a study which is designed to evaluate the impact of randomly providing cash transfers to half the workers in a firm. The research team can use
iematchto match and compare wages of women in the treatment group (which received the cash transfers) with observations in a control group (which did not receive the cash transfers).
iebaltabruns balance tests, and produces balance tables which show the difference in means for one or more treatment groups. It can be used to check if there are statistically significant differences between the treatment and control groups. In case there are significant differences in the means,
iebaltabeven displays an error message that suggests that results from such data can be wrongly interpreted.
iedroponedrops only a specific number of observations, and makes sure that no additional observations are dropped.
ieboilsaveperforms checks to ensure that best practices are followed before saving a data set.
ieddtabruns difference-in-difference regressions and displays the result in well-formatted tables.
iegraphproduces graphs of results from regression models that researchers commonly use during impact evaluations.
To install the
ssc install ietoolkit in your Stata command window.