Peter J Wilcoxen > PAI 789 Advanced Policy Analysis

General Information, Textbook and Requirements

Spring 2024

General information that you may need at the beginning of the semester.

Contact Information

Email address: wilcoxen at
Office hours time: Mon and Wed, 10:00-11:30 or by appointment
Office hours location:
Eggers 225

Course Web Site

Most course materials, including instructions for assignments and the corresponding due dates, will be posted at the main URL below. In addition, GitHub will be used extensively for distributing and submitting computational assignments.

Lab Sessions

On Fridays there will be an optional lab session from 3:00 to 4:30 in Eggers 225b. The sessions are very informal and you're welcome to come and go at any time. It's a good time to stop by if you're running into problems with the assignments, especially if you're having trouble with your code.

Course Content

This course focuses on developing two kinds of skills needed for advanced policy analysis: (1) economic modeling beyond that covered in Economics for Public Decisions; and (2) core computational techniques for building and analyzing complex datasets in a clear, reliable, and reproducible way. More detail is available from the Course Outline page.

Learning Outcomes

Through this course you will: (1) learn how to construct and apply advanced models for economic analysis; (2) learn key principles and practices for carrying out robust, reliable, and reproducible computational analysis; (3) learn how to apply those practices in developing code for building, managing, visualizing, and analyzing large datasets, including those with a spatial component.


There are two formal prerequisites: PAI 721 Introduction to Statistics and PAI 723 Economics for Public Decisions. In addition, PAI 724 Data-Driven Decision Making would usually be taken before this course but is not strictly required.


In addition to software specifically related to data analytics, which will be discussed during class, you'll need three general purpose applications, two for your phone and one for your computer:

Google Classroom, phone

You'll use it to respond to in-class exercises. It's free and available for both iOS and Android. When you go to download it, don't be put off by its relatively low rating: most of the poor reviews have to do with the way it handles deadlines, and we won't use that feature at all.

You'll use Google Classroom with your SU Google account, which has a userid that looks like your email address but with an extra "g." before "": "" becomes "". That account has features beyond access to Google Classroom: more information is available here. Please note that you must have a PIN set on your phone in order to use it with a account. Otherwise, you'll get an error message saying you don't have access.
The code for joining the Google Classroom for the course will be discussed in class and is also shown on the main web page for the course.
A scanning app, phone

You'll use it to scan handwritten in-class exercises to PDFs so you can submit them electronically (PDFs are preferred to straight photos). If you already have one, it will probably be fine. If you don't, a good option is Genius Scan. It's free, easy to use, works well, and is available for both iOS and Android. You can skip this if you have a tablet with an app like Notability that can produce PDFs directly.
Slack, computer

Using Slack is optional but it's very handy if you want to ask me a question about your code outside class. If you join the Slack workspace for the class you can send questions and code to me via my direct message channel. The name of the workspace is on the main web page for the class.


Strictly speaking, there's no required textbook. However, we'll use Python and Python's Pandas module extensively. If you haven't used Pandas a lot and don't want to spend more time than necessary on Google trying to figure it out, you may want to buy a copy of the book below.

If you're new, or relatively new, to Python, you might want to use one of the free web sites below. These are nice because they let you see what happens when you run example code.

A book that's decidedly not required, but that you might want to consider as part of your professional library, is the following:


The core of the class will be many short exercises: often more than one per class session. They will be a mix of pencil-and-paper analytical exercises and computational tasks.

Analytical Exercises: 20% of final grade.

These will be given out and collected via Google Classroom during class. Grading will be based almost entirely on effort: if you make an honest attempt to try an exercise and submit a response you'll get credit for it; if you don't try it, or don't submit a response, you'll get a 0. Analytical exercises will have a prefix "p" before their number because they're usually done on pencil and paper: p01, p02, etc.

Computational Exercises: 50% of final grade.

Several of these will be given out and collected via GitHub each week. They'll have a prefix "g" before their number to indicate the link to GitHub: g01, g02, etc. You'll often have some time during class to work on them but they will usually be due late on Friday evening to give you time to finish them outside of class, if necessary. Grading will be on a 10-point scale using the following rubric:

Exercise Attribute
Honest Effort no=0, yes=6
Correct Results
low=0, partial=1, complete=2
Clarity and Documentation low=0, partial=1, high=2

It's probably clear that the scale is set up to encourage trying each exercise: an honest attempt, even if it is muddled and incorrect, will end up with a 6, which is much better than a 0.

Working in groups on the exercises:

Working in groups on both kinds of exercise is encouraged, especially the in-class analytical assignments (p#).

For the computational exercises (g#), please limit the group to no more than three people and make a note of your collaborators in the comments at the start of the script.

However, for both kinds of exercises, you should turn in your own copy of the answer. On the computational side, in particular, that's to make sure everyone leaves the class with a complete set of example code.

Individual Project

Weight: 30% of the final grade. This will be a semester-long project on a topic of your own choosing. The assignment is to build a well-documented public GitHub repository that could be cloned by someone else and used to carry out an analysis of your design. The repository should contain at least the following components:

The file (any additional Markdown or PDF files if needed) should provide enough information that someone else could understand the purpose of the analysis and reproduce it from the underlying raw data. In particular, as a whole the documentation should: (1)  concisely explain the purpose of the analysis; (2) include instructions on how to obtain the original input data, such as where it can be downloaded or it should provide a script to download the data via an API; (3) explain what each script does and the order in which they should be run; (4) explain any additional files provided in the repository; and (5) discuss the results.

The project will be graded on three criteria. Two are similar to those used for the exercises: correctness and clarity. Does it run without error and produce correct results? Is the code clear and the overall project well-documented? The third criterion can best be called technical merit. That's a catch-all term for whether the project does something particularly useful, challenging, interesting, or novel. Its purpose is probably clear: it's to encourage people to stretch themselves by ensuring that a challenging project can still receive a good grade even if it isn't as polished as it could be.

Finally, there will be a session at the end of the semester where you'll give a brief presention on your project to the class.

Optional Plan B Course Configuration

If you took PAI 724 Data Driven Decision Making in Fall 2023 or have had extensive experience elsewhere and are very comfortable with Python, you may choose to be graded under what we'll call Plan B. Under it, you'll be exempt from about half of the computational exercises and their weight in the semester grade will be reduced to 20%. The weight on the individual project, in turn, will increase to 60%.

If you want to opt for Plan B, please let me know by email or Slack by the end of the second week of class.

Working in Groups and Learning from Others

As you'll learn very quickly if you don't know it already, working with large, complex data sets using sophisticated analytical tools is a highly collaborative activity. Learning when and how to look for help will be part of the course. With that said, it will be important in some circumstances to document the line between your work and that of others. Here are some guidelines:

  1. It is not necessary to document any help you get from me. For example, if I send you a snippet of code, you don't need to cite me as the author.
  2. It is not necessary to document general help you get from web sites. For example, you don't need to provide any kind of citation if you look up ways to select a subset of elements in a Python dictionary based on their values. However, detailed help beyond that probably falls under category 4 below.
  3. It is not necessary to document conversations you have with other members of the class about: general approaches to problems; nitty-gritty details of programming syntax or invoking particular functions; or minor help with debugging. Very broad help like this doesn't rise to the level of group work.
  4. However, if you collaborated more closely with others on an exercise (i.e., on the design of the solution, or on doing the algebra or the coding jointly) you should indicate your collaborators on your answer as mentioned earlier.
  5. In general, other things should be cited or documented. For example, if you use a function or module written by someone else (other than those in a standard package) you should document the source. If you work very closely with someone else from class, you should document that as well.
  6. Check with me if you're not sure.

Using AI Tools

AI tools may be used, especially for the individual project and for writing documentation. Using GitHub Copilot with Visual Studio Code is particularly useful and encouraged. That said, think of AI code and documentation as a first draft and check it carefully to be sure it's correct in your context.

You may also find AI tools useful for the weekly computational assignments, but there please limit your use to having them: (1) remind you about syntax and function arguments, or (2) help you with documentation. Please do not change variable names or the overall structure of the scripts: if you do, your results may not match the expected output. Also, it will be harder to pinpoint problems if your script isn't running correctly.

Academic Integrity

Syracuse University’s Academic Integrity Policy reflects the high value that we, as a university community, place on honesty in academic work. The policy holds students accountable for the integrity of all work they submit and for upholding course-specific, as well as university-wide, academic integrity expectations. The policy governs citation and use of sources, the integrity of work submitted in exams and assignments, and truthfulness in all academic matters, including course attendance and participation. The policy states that any work a student submits for a course must be solely their own unless the instructor explicitly allows collaboration or editing. The policy also requires students to acknowledge their use of other peoples’ language, images or other original creative or scholarly work through appropriate citation.

Upholding Academic Integrity includes abiding by instructors’ individual course expectations, which may include the protection of their intellectual property. Students should not upload, distribute, or otherwise share instructors’ course materials without permission. Students found in violation of the policy are subject to grade sanctions determined by the course instructor and non-grade sanctions determined by the School or College where the course is offered, as outlined in the Violation and Sanction Classification Rubric. Students are required to read an online summary of the University’s academic integrity expectations and provide an electronic signature agreeing to abide by them twice a year during pre-term check-in on MySlice.

The use of AI tools for course assignments is discussed in detail in the syllabus section "Using AI Tools".

Diversity, Equity, Inclusion and Accessibility

The official University statement includes this commitment: "In our quest to become a campus community that embodies Diversity, Equity, Inclusion and Accessibility (DEIA) and to live as an expression of belonging, becoming and bestowing, Syracuse University rejects and rebukes all forms of racism, sexism, homophobia, transphobia, ableism, religious harassment and hostility, classism and all other forms of discrimination, othering, hate and non-accessibility in all its myriad expressions." This is personally important to me as well. If you ever feel discriminated against or unsupported because of your identity, please let me or someone else in the department know, or contact one of the resources on this page.

Disability-Related Accommodations

Syracuse University values diversity and inclusion; we are committed to a climate of mutual respect and full participation. There may be aspects of the instruction or design of this course that result in barriers to your inclusion and full participation in this course. I invite any student to contact me to discuss strategies and/or accommodations (academic adjustments) that may be essential to your success and to collaborate with the Center for Disability Resources (CDR) in this process.

If you would like to discuss disability-accommodations or register with CDR, please visit Center for Disability Resources. Please call (315) 443-4498 or email for more detailed information. The CDR is responsible for coordinating disability-related academic accommodations and will work with the student to develop an access plan. Since academic accommodations may require early planning and generally are not provided retroactively, please contact CDR as soon as possible to begin this process.

Discrimination or Harassment

The University does not discriminate and prohibits harassment or discrimination related to any protected category including creed, ethnicity, citizenship, sexual orientation, national origin, sex, gender, pregnancy, disability, marital status, age, race, color, veteran status, military status, religion, sexual orientation, domestic violence status, genetic information, gender identity, gender expression or perceived gender.

Any complaint of discrimination or harassment related to any of these protected bases should be reported to Sheila Johnson-Willis, the University’s Chief Equal Opportunity & Title IX Officer. She is responsible for coordinating compliance efforts under various laws including Titles VI, VII, IX and Section 504 of the Rehabilitation Act. She can be contacted at Equal Opportunity, Inclusion, and Resolution Services, 005 Steele Hall, Syracuse University, Syracuse, NY 13244-1120; by email:; or by telephone: 315-443-0211.

Religious Observances

SU religious observances notification and policy, found at the URL below, recognizes the diversity of faiths represented among the campus community and protects the rights of students, faculty, and staff to observe religious holidays according to their tradition.  Under the policy, students are provided an opportunity to make up any examination, study, or work requirements that may be missed due to a religious observance provided they notify their instructors before the end of the second week of classes for regular session classes and by the submission deadline for flexibly formatted classes. If you prefer, however, you can notify me directly by email. In either case, just check with me and we'll work out an arrangement that fits your schedule. More information is available here.

Site Index | Zoom | Admin
Peter J Wilcoxen, The Maxwell School, Syracuse University
Revised 01/17/2024