6.00.2x-Introduction-to-Computational-Thinking-and-Data-Science

##About this Course 6.00.2x is aimed at students with some prior programming experience in Python and a rudimentary knowledge of computational complexity. We have chosen to focus on breadth rather than depth. The goal is to provide students with a brief introduction to many topics, so that they will have an idea of what’s possible when the time comes later in their career to think about how to use computation to accomplish some goal. That said, it is not a “computation appreciation” course. Students will spend a considerable amount of time writing programs to implement the concepts covered in the course. Topics covered include plotting, stochastic programs, probability and statistics, random walks, Monte Carlo simulations, modeling data, optimization problems, and clustering.

What will I learn? If you successfully complete this course, you will have:

Developed some insight into the process of moving from an ambiguous problem statement to a computational formulation of a method for solving the problem, Learned a useful set of algorithmic and problem reduction techniques, Learned how to use simulations to shed light on problems that don’t easily succumb to closed form solutions, Learned how to use computational tools, including simple statistical, machine learning, and plotting tools, to model and understand data.