EMSE 4571 / 6571
Intro to Programming for Analytics
Spring 2024

Department: Engineering Management and Systems Engineering @ GWU

Credits: 3


This course provides a foundation in programming for analytics using the R programming language with a comparison to Python. Topics covered include fundamentals of programming (operators, data types, objects, functions, conditionals, loops, strings, testing, and debugging) as well as techniques for working with data sets in R and Python (file input/output, data structures, data wrangling, data visualization, external packages, and reproducible reporting). Emphasis will be on producing clear, robust, and reasonably efficient code using top-down design, informal analysis, and effective testing and debugging. Students will primarily work on individual programming assignments to develop skills in computational problem solving, writing code, and working with data. Students will be assessed through quizzes, homework assignments, and exams. Teaching will involve interactive lectures with plenty of time spent live coding and working on practice problems in class. This course assumes no prior programming experience and is an ideal preparation for higher level courses in data analytics.

Learning Objectives:

Having successfully completed this course, students will be able to:

  • Develop simple programs to effectively solve medium-sized tasks by:
    • Employing modular, top-down design in program construction.
    • Pro-actively creating and writing test cases to test and debug code.
    • Applying computational problem-solving skills to new problems.
  • Write clear, robust, and reasonably efficient code for working with data using:
    • Sequential, conditional, and loop statements.
    • Numeric, string, and logical data types.
    • Data structures, including lists, vectors, and data frames.
  • Reproducibly import, export, manipulate, and visualize data.


There are no prerequisites. Students are assumed to have zero prior programming experience for this course.