Skip to main content

Research Repository

Advanced Search

Speaking Stata: Loops, again and again

Cox, Nicholas J.

Speaking Stata: Loops, again and again Thumbnail



Two commands in official Stata, foreach and forvalues, provide structures for looping through lists of values (variable names, numbers, arbitrary text) and repeating commands using members of those lists in turn. These commands may be used interactively, and none is restricted to use in Stata programs. They are explained and compared in some detail with a variety of examples. In addition, a self-contained exposition is given on local macros, understanding of which is needed for use of foreach and forvalues. This column is a revision of the column “How to face lists with fortitude”, which appeared in Stata Journal 2: 202–222 (2002). (The bizarre bibliographical details are too, too extraordinary not to be flagged but were pure happenstance.) The presentation here has been trimmed of now historic content and corrected, improved, and updated in several minor details.


Cox, N. J. (2020). Speaking Stata: Loops, again and again. The Stata Journal, 20(4),

Journal Article Type Article
Online Publication Date Dec 22, 2020
Publication Date 2020
Deposit Date Sep 22, 2021
Publicly Available Date Sep 22, 2021
Journal The Stata Journal: Promoting communications on statistics and Stata
Print ISSN 1536-867X
Electronic ISSN 1536-8734
Publisher SAGE Publications
Peer Reviewed Peer Reviewed
Volume 20
Issue 4


Published Journal Article (397 Kb)

Publisher Licence URL

Copyright Statement article is distributed under the terms of the Creative Commons Attribution-NonCommercial 4.0 License ( which permits non-commercial use, reproduction and distribution of the work without further permission provided the original work is attributed as specified on the SAGE and Open Access pages (

You might also like

Downloadable Citations