PAI 789 Advanced Policy Analysis

General Information, Textbook and Requirements

Spring 2022

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 426 (or Zoom by appointment)

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 the large conference room in the Center for Policy Research on the fourth floor of Eggers. 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.

Zoom Session for Class Meetings

At least for the first few weeks, the Zoom session below will be running during class for people required to isolate. The passcode is posted in Blackboard.

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:

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 a lot of features beyond access to Google Classroom: it has its own GMail address, unlimited Google Drive storage, and various other perks. 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:


Weight: 75% of the final grade. 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 analysis and computational tasks. The pencil-and-paper exercises will usually be turned in during class, or at the start of the following class. Computational exercises 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.

Finally, working in groups on the exercises is encouraged. However, please limit the group to no more than three people and make a note of your collaborators on your assignment when you submit it.

For both pencil-and-paper exercises submitted through Google Classroom and computational exercises submitted through GitHub, you should turn in your own copy of the answer. On the computational side, that's to make sure everyone leaves the class with a complete set of example code.

Individual Project

Weight: 25% 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.

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.

Academic Integrity

Overall Policy: Syracuse University's Academic Integrity Policy reflects the high value that we, as a university community, place on honesty in academic work. The policy defines our expectations for academic honesty and holds students accountable for the integrity of all work they submit. Students should understand that it is their responsibility to learn about course-specific expectations, as well as about university-wide academic integrity expectations. The policy governs appropriate citation and use of sources, the integrity of work submitted in exams and assignments, and the veracity of signatures on attendance sheets and other verification of participation in class activities. The policy also prohibits students from submitting the same work in more than one class without receiving written authorization in advance from both instructors. Under the policy, students found in violation 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 described in the Violation and Sanction Classification Rubric. Syracuse University 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.

Online Exams: All academic integrity expectations that apply to in-person exams also apply to online exams. In this course, all work submitted for exams must be yours alone. Discussing exam questions with anyone during the exam period violates academic integrity expectations for this course.

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.

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.

Site Index | Zoom | Admin
Peter J Wilcoxen, The Maxwell School, Syracuse University
Revised 02/28/2022