Background

Computing has always been an essential ingredient of statistical practice. While probability theory provides us with a mathematical foundation for describing data and studying statistical inference, computing technologies act as a medium through which analyses are actually realized. Our ability to manipulate data and to audition new methodologies depends on and is limited by our familiarity with computing technologies. To some extent, even our notion of what constitutes "data" is a product of our background in computing.

Through a series of group projects, we will study tools for "exploratory computing." We will emphasize programming and scripting languages over point-and-click interfaces. We hope to instill a problem solving ability so that you will learn languages on your own, cull online documentation or tutorials, find books and manuals.

The next two lectures...

We begin with operating systems, with Unix in particular. We then move to some exercises involving defining "data." We examine simple data formats, both structured (the relational model) and semi-structured (XML, JSON).

Statistics 202A
Instructor    Mark Hansen
8951 Mathematical Sciences Building
University of California, Los Angeles
cocteau|@|stat.ucla.edu
www.stat.ucla.edu/~cocteau

Wiki    wiki.stat.ucla.edu/stat202


Meeting    Monday/Wednesday 3:00-4:20
9413 Boelter


Office Hours    Tuesdays 2-3 and Fridays 10-11
(or by appointment)
8951 Mathematical Sciences


Grading   
50% Group projects
40% Short programming and writing tasks
10% In-class participation

Texts    The following books are only recommended, although will probably prove to be extremely useful references long after the course is over.
  • Unix in a Nutshell, by Robbins

  • Learning Python,
    by Lutz and ascher

  • Mastering Regular Expressions, by Friedl

  • Software for Data Analysis, by Chambers

  • R Programming for Bioinformatics,
    by Gentleman

  • Processing,
    site by Reas and Fry
Texts will be added to this list as the quarter progresses.

Resources       A list of computing resources and selected online articles is forming here.

Lectures    Lectures will be posted in an ongoing basis before each lecture. Since lectures take place in the computer lab, we won't print them out in advance.

Lecture 1 (Introduction)
Lecture 2 (Unix basics, pipes)
Lecture 3 (Regular expressions)
Lecture 4 (Data storage I)
Lecture 5 (Data storage II)
Lecture 6 (R introduction)
Lecture 7 (R, a second look)
Lecture 8 (Functions in R)
Lecture 9 (Function evaluation and data-directed programming)
Lecture 10 (Graphics in R)
Practicum (NYT A/B Testing)