Advanced Stata: Programming and other techniques to make your life easier

Overview - Advanced Stata: Programming and other techniques to make your life easier

Course dates: 6 – 10 November 2017

The aim of the course is to teach competent Stata users the techniques that allow you to get the most out of Stata and speed up the output of your work.

As well as being a powerful tool for statistical analysis, Stata offers a variety of commands for manipulating your data and for formatting, arranging and exporting your results.

The course is aimed at researchers and other professionals, from any discipline, who regularly use Stata for analysis but want to learn how to work more efficiently. It would be particularly suited to those who are about to embark on large analyses and who would like a quick guide on how to automate the repetitive parts of the process.

The course is taught by research staff from the Population Studies Group, who regularly use Stata for large-scale analyses using multiple data sources. The examples used in the course are drawn from the background of the tutors and are, therefore, from the population and health sciences. However, none require any specialist knowledge of the field.

Much of the material in the course has been developed with students and staff from the UK and overseas. Most teaching is hands-on, using Stata to tackle a series of exercises designed to illustrate the use of particular commands in order to solve a variety of problems. These exercises are supplemented by short lectures and a very comprehensive set of notes. There is a strong emphasis throughout on providing information that can be built on to tackle new problems and to be applied in different situations.

We use Stata 14 in a Windows environment; users of other operating systems should note that, although almost everything is the same, there are some differences between operating systems and these are not covered in the course.

Who should attend?

The course is designed for people who want to be more efficient in their use of Stata. Those who are already experienced in using Stata for data analysis will benefit most from the course. As a minimum, you should be able to use Stata for an analysis of some sort (linear regression, for example) generate, recode and label variables, and be comfortable writing comprehensive do files. If you are already familiar with the merge, collapse, reshape and append commands, have used foreach or forvalues loops and can understand a simple Stata program, then this course may be too basic for you. If, on the other hand, none of that sounds familiar, then this could be exactly what you need! If you have any doubt about whether the course would be suitable for you, please do get in touch with the organisers who will be able to advise you further. Applicants should have a good command of English.

Course objectives
Course objectives - Advanced Stata: Programming and other techniques to make your life easier

Course Content

The course can be divided broadly into three sections:

  • Data handling and manipulation
    Stata has some powerful but simple commands for managing and manipulating data. We cover the commands needed to combine data from different datasets (appending and merging) and to rearrange data from wide format to long format. We will also cover searching for duplicate records, and managing these, reordering the variables in the dataset, generating summary variables and summary datasets.
  • Accessing and outputting results
    One of the commonest complaints about Stata is the difficulty of producing well-formatted results output. The output on the screen typically contains more detail than is required, and the formatting is often sub-standard. Cutting and pasting is tedious when there are many results to present and inefficient when analyses have to be repeated.
  • It is possible to automatically output well formatted, concise and relevant results from Stata. You can set up do files which write the results you want to the screen, or external files, in the required format. These results files can then be automatically updated each time the analysis is repeated. There are several ways to do this using either additional user-written Stata commands or with some simple programming. This course introduces both approaches.
  • Programming Stata
    Data cleaning, data management and the initial stages of many analyses can be repetitive and time consuming. Many of these repetitive tasks can be automated in Stata, which not only speeds up the process but also reduces the chances of making an error. We cover the use of basic programming techniques to assist you in quickly and efficiently carrying out repetitive tasks.

Aims & objectives

By the end of the course you should be able to:

1. Generate variables that contain summaries of the data
2. Create a summary dataset using collapse
3. Navigate a dataset using _n, _N and subscripted variables
4. Rearrange a dataset using reshape
5. Combine multiple datasets using merge and append
6. Identify duplicate observations
7. Export data to a spreadsheet
8. Create tailor-made publication quality graphs
9. Understand what macros and scalars are
10. Be able to use foreach and forvalues loops
11. Understand and use if statements 
12. Understand how Stata stores estimation results 
13. Be able to access and use stored estimation results 
14. Know how to export results using user-written commands: estout, outreg, tabout 
15. Understand how Stata programs work
16. Be able to write and use a simple Stata program 
17. Be able to write a do-file which exports results using file write

Methods of assessment

None. There will be an opportunity on the last afternoon for students to practice with their own datasets. A certificate of attendance will be provided on completion of the course.

How to apply
How to apply - Advanced Stata: Programming and other techniques to make your life easier

Applying for this course

Please complete the online application form.


The student is responsible for obtaining any visa or other permissions to attend the course, and is encouraged to start the application process as early as possible as obtaining a visa for the UK can sometimes take a long time. The Short Courses team, in the Registry, can provide supporting documentation if requested.

Accommodation and meals

A list of hotels and other accommodation located in the vicinity of the School can be supplied on request to the Registry. Lunch can be purchased from the School's Refectory in the Keppel Street building or the cafe on the Tavistock Place building. Evening meals are not catered for at the School, but there is a large choice of restaurants, cafes and shops nearby.

The London School of Hygiene & Tropical Medicine is committed to improving global health through its programme of short and full-time postgraduate study.

Please note:

  • If you have been offered a place on the course you will not be able to register without bringing formal ID (Passport) and without having obtained the correct visa.
  • It is essential that you read the current visa requirements for short course students.
  • The School may cancel courses two weeks before the first day of the course if numbers prove insufficient.  In those circumstances, course fees will be refunded.
  • The School cannot accept responsibility for accommodation, travel and other losses incurred as a result of the course being cancelled.