

The objective of TStat Training’s more advanced course is to provide participants with the programming commands and options required to autonomously develop and modify Stata ADO files. The opening session offers a quick overview of the fundamental concepts and commands (macros, vectors, scalers, looping, branching, temporary objects, foreach, forvalues) intrinsic to successful programming development. Session two moves on to illustrate the most effective way to develop a Stata ADO file, introducing participants to more specific programming concepts (such as arguments, local subroutines and the temporary storing of results) and Stata’s programming commands tokenize, macro shift, marksample and markout “byable” and sortpreserve. In section three participants are introduced to Stata’s inbuilt matrix capabilities, before moving on in the final session to developing their own programs for linear and maximum likelihood estimators.
In common with TStat’s course philosophy, each session is composed of both a theoretical component (in which the programming techniques are fully explained via a series of course specific developed examples), and an applied (hands-on) segment, during which participants have the opportunity to implement the techniques under the watchful eye of the course tutor.
At the end of the course, it is expected that participants will be able to independently implement both the techniques learnt and personalize the ADO program templates specifically developed during the course in order to enhance the effectiveness of their research.
Researchers or professionals with a good knowledge of the introductory programming skills covered on our A Little bit of Programming goes an Awfully Long Way.. wising to take their programming skills to the next level in order to be able to program their only Stata ADO files for data analysis and data management and to develop Stata commands for least squares and maximum-likelihood estimators.
It is assumed that participants have a sound working knowledge of Stata and are familiar with the concepts and Stata commands treated in our introductory Stata Programming course: A Little bit of Programming goes an Awfully Long Way..
SESSION I: PROGRAMMING BASICS | A QUICK REVIEW
- Macros
- Global macros
- Local macros
- Scalars and matrices
- Temporary objects
- Looping
- Branching
SESSION II: WRITING STATA PROGRAMS
- Programming in Stata
- Do-files and ADO-files
- Writing and modifying a Stata programs
- Programs without arguments
- Programs with positional arguments
- Programs with named positional arguments
- Storing and retrieving program results
- Programs with arguments using the “syntax” construct
- Using tokenize and macro shift
- ADO-files
- Implementing program options
- The return statements
- Sample restriction with marksample and markout
- Making a command “byable”
- The use of sortpreserve
- Writing an rclass ADO-file
- Implementing program options
- Sample restrictions with marksample
- The usefulness of markout
- Make a program “byable”
- The use of sortpreserve
- Writing an eclass ADO-file
- More on storing results in e()
- A eclass program template
- Temporarily destroying the data in memory
- Local sub-routines
SESSION III: STATA MATRIX CAPABILITIES
- Stata matrix commands
- Stata matrix input and output
- Matrix input from Stata estimation results
- Stata matrix subscripts and combining matrices
- Matrix operators
- Matrix functions
- Defining a macro by a matrix function
- Matrix accumulation commands
SESSION IV: PROGRAMMING ESTIMATORS
- Programming Linear Least Squares estimation
- Programming Maximum Likelihood estimation
- Some examples
SUGGESTED READING
- Baum, Cristopher F. (2016). An Introduction to Stata Programming, Second Edition, StataPress.
We are currently adding the finishing touches to our 2024 training calendar. We therefore ask you to check our website regularly or contact us at training@tstat.eu should the dates for the course you are interested in not be published yet. You will then be contacted via email as soon as the dates are available.
Dr. Giovanni Cerulli
IRCrES-CNR
Research Institute on Sustainable Economic Growth
National Research Council of Italy – Rome
ONLINE COURSE
The objective of TStat Training’s more advanced course is to provide participants with the programming commands and options required to autonomously develop and modify Stata ADO files.