Class Announcement: 36-350, Statistical Computing
It's that time of year again:
- 36-350, Statistical Computing
- Description: Computational data analysis is an essential part of modern statistics.
Competent statisticians must not just be able to run existing programs, but to
understand the principles on which they work. They must also be able to read,
modify and write code, so that they can assemble the computational tools needed
to solve their data-analysis problems, rather than distorting problems to fit
tools provided by others. This class is an introduction to programming,
targeted at statistics majors with minimal programming knowledge, which will
give them the skills to grasp how statistical software works, tweak it to suit
their needs, recombine existing pieces of code, and when needed create their
own programs.
- Students will learn the core of ideas of programming — functions,
objects, data structures, flow control, input and output, debugging, logical
design and abstraction — through writing code to assist in numerical and
graphical statistical analyses. Students will in particular learn how to write
maintainable code, and to test code for correctness. They will then learn how
to set up stochastic simulations, how to parallelize data analyses, how to
employ numerical optimization algorithms and diagnose their limitations, and
how to work with and filter large data sets. Since code is also an important
form of communication among scientists, students will learn how to comment and
organize code.
- The class will be taught in the R
language.
- Pre-requisites: This is an introduction to programming for statistics students. Prior exposure
to statistical thinking, to data analysis, and to basic probability concepts is
essential, as is some prior acquaintance with statistical software. Previous
programming experience is not assumed, but familiarity with the
computing system is. Formally, the pre-requisites are "Computing at Carnegie
Mellon" (or consent of instructor), plus one of either 36-202 or 36-208, with
36-225 as either a pre-requisite (preferable) or co-requisite (if need be).
- The class may be unbearably redundant for those who already know a
lot about programming. The class will be utterly incomprehensible for
those who do not know statistics and probability.
Further details can be found at
the class website.
Teaching materials (lecture slides, homeworks, labs, etc.), will appear both
there and here.
— This is the second time the department has done this course. Last
year, Vince Vu and I made it up, and I
learned a lot from teaching it with him. This year,
he's been carried
to Ohio in a swarm of bees
got a job at Ohio State,
so I'll have to pull it off without his help. Another change is that instead
of having a (very reasonable) 26 students, I've got 42 people signed up and
more on the waiting list. Only 23 of those are statistics majors, however, and
I am tempted to scare the rest away not sure that the others
fully appreciate what they have signed up for. We'll see.
Corrupting the Young;
Enigmas of Chance;
Introduction to Statistical Computing
Posted at August 21, 2012 14:59 | permanent link