Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

University of Michigan

Introduction to Data Science in Python

University of Michigan via Coursera


This course will introduce the learner to the basics of the python programming environment, including fundamental python programming techniques such as lambdas, reading and manipulating csv files, and the numpy library. The course will introduce data manipulation and cleaning techniques using the popular python pandas data science library and introduce the abstraction of the Series and DataFrame as the central data structures for data analysis, along with tutorials on how to use functions such as groupby, merge, and pivot tables effectively. By the end of this course, students will be able to take tabular data, clean it, manipulate it, and run basic inferential statistical analyses. This course should be taken before any of the other Applied Data Science with Python courses: Applied Plotting, Charting & Data Representation in Python, Applied Machine Learning in Python, Applied Text Mining in Python, Applied Social Network Analysis in Python.


  • Fundamentals of Data Manipulation with Python
    • In this week you'll get an introduction to the field of data science, review common Python functionality and features which data scientists use, and be introduced to the Coursera Jupyter Notebook for the lectures. All of the course information on grading, prerequisites, and expectations are on the course syllabus, and you can find more information about the Jupyter Notebooks on our Course Resources page.
  • Basic Data Processing with Pandas
    • In this week of the course you'll learn the fundamentals of one of the most important toolkits Python has for data cleaning and processing -- pandas. You'll learn how to read in data into DataFrame structures, how to query these structures, and the details about such structures are indexed.
  • More Data Processing with Pandas
    • In this week you'll deepen your understanding of the python pandas library by learning how to merge DataFrames, generate summary tables, group data into logical pieces, and manipulate dates. We'll also refresh your understanding of scales of data, and discuss issues with creating metrics for analysis. The week ends with a more significant programming assignment.
  • Answering Questions with Messy Data
    • In this week of the course you'll be introduced to a variety of statistical techniques such a distributions, sampling and t-tests. The week ends with two discussions of science and the rise of the fourth paradigm -- data driven discovery.

Taught by

Christopher Brooks, Kevyn Collins-Thompson, Daniel Romero and V. G. Vinod Vydiswaran


2.4 rating, based on 46 Class Central reviews

4.5 rating at Coursera based on 26931 ratings

Start your review of Introduction to Data Science in Python

  • Profile image for Paul Leitner
    Paul Leitner
    a little background on me - I have taken 10+ online courses, good, bad and everything in between. I work in business intelligence and have a very solid background in various dialects of SQL, work with quite a bit of python. Frankly, I find this cou…
  • Anonymous
    The course in and of itself is not _terrible_, but expect to do a lot of searching for outside help on Stack Overflow and the like as the lectures do not provide anywhere near sufficient material to solve the problems. This is pretty much to be exp…
  • Profile image for Rtodyssey
    Background: I have some basic programming understanding of loops, functions and data structures in a couple of languages. I wanted a course to give me strong fundamentals of Python for usage in Data Science. Course: The videos give an overview o…
  • Anonymous
    The worst course I've ever taken. Some of the stuff in there is useful, but this isn't really a "course." It's more like a book on tape. The professor is literally reading a transcript and it sounds like he's reading a kids book talking about data science. He constantly does these unnecessary hand gestures and goes slow through the stuff that is easy, but fast through the stuff that needs to be explained. he doesn't really explain the reasons behind anything... Like I said, it sounds like he's reading a book. I was very annoyed watching his videos.
  • Anonymous
    The lecturer puts minimal effort to the videos, information are scarce and difficult to understand.
    The assignments have a really steep learning curve, and are too difficult to complete, provided the topics covered by the lecturer.
    Help from the teaching staff is kept to a minimum, and most students don't actually manage to complete the assignments
    In conclusion, the worst course i've ever taken in my academic life.
  • D C
    This course is fast, but it's not the good kind of challenging. The instructor sounds like he's reading from a script, and there's almost no explanation of anything, even basic pandas syntax. "Here's a function you can use," and then just types it out without any explanation of, e.g., what parameters are mandatory, what options there are, and what they mean.

    The result is that each 7-min video takes me hours to work through and think about, and I'm still left with many questions. And no, I'm not a beginner to python. I'm honestly not sure if I'll finish the course at this point, though I'm halfway through.
  • Anonymous
    For sure is a challenging course, but I miss more efforts when it comes to explain "Lambda" or "List Comprehension" . Actually, I had to google a lot of times just to understand basic concepts of those functions -I'm not a Python noob though.

    The "tasks" during the videos are a bit frustrating, it feels like "here's a formal definition of what Lambda is, now manage to solve something you probably won't understand because I didn't tell you how it works".
  • Anonymous
    Lectures are too fast. They don't explain anything, just running through examples. For example they use a function but they don't explain what arguments it takes so you have to read about it elsewhere.
  • Graham C
    Really excellent course. Fast paced so be prepared to 'pause' to research or think about things. Doesn't spoon feed you so a bit of googling required now and again. Challenging assignments really make you think. Auto-grader for assignments has been buggy but is being fixed. Suggest you know Python a bit before starting.
    The course assignment can be graded without paying for the course - very generous functionality compared to most other courses where this is locked down.
    Great first session, cant wait for the next!
  • Profile image for Julián Urrea
    Julián Urrea
    The course is definitely NOT for beginers in python. It's more than just challenging, sometimes, you don't know how to continue!!!, so you feel you want to quit at some point. What I loved the most, was the collaboration between students in the forum. A lot of students with great experience always ready to help. Sadly, I never saw a mentors reply. But, I think, once you complete, you can say that you lerned very interesting thing to do with pandas...
  • Juan Velasquez
    Find another course. I got the impression that the professor was just rapidly reading from a script and wasn't really interested in the student's progress. He seemed, as another poster noted, "disconnected" and looked on teaching the course as a necessary evil. Most of the assignments were disconnected from the material being taught.
  • Anonymous
    They shouldn't advertise that you can learn python in this class. The first part of the specialization is terrible at teaching the language, and a beginner will get lost and discouraged right away. So many crucial building blocks are skipped over along the way, that I don't even see the point of them starting with a couple of basic subjects. You have to know python to take on this specialization and get the most out of it. Having the professor expect you to learn everything from Google is not the way to go, and is a terrible waste of people's time and money.
  • Anonymous
    Disconnect with the word "Introduction"... lecture goes from basic to quiz that assumes advanced knowledge. Think: Chem 101 to build a rocket engine the next day.

    Stick with Dr Chuck's python course if you want to learn at the Intro level.
  • Profile image for Jeff Trawick
    Jeff Trawick
    The presentation of this class is poor. Most of the time the lecturer is describing important code concepts (down to square brackets, commas, etc.) using only speech, with no visual cues (i.e., written code to look at). Inconceivable! If that's n…
  • Anonymous
    This course is honestly not good for Python beginners despite the name. Greatly ramps itself up in difficulty when week 2 comes around, probably due to the one week free trial period.

    Lots of functions and methods lack explanation and the response is to do research in Stackoverflow.

    I'm hating life right now
  • Anonymous
    Too fast and just talking through the typing of syntax is just not the way I learn. Nothing like the courses Charles Severance teaches. This is NOT teaching but rather talking quickly through syntax. NOT HELPFUL!
  • Anonymous
    This is a pretty awful course, as of the time of writing this review in July of 2019. Let me preface this by saying that the material you learn is very helpful. Pandas is a great library to learn for loading, cleaning, and manipulating large amounts…
  • Mark Adelhelm
    I would agree with many of the criticisms offered here. While the Coursera team has done a good job of packaging this to make it easy to navigate, the organization of the content and the lecture coverage is insufficient to be prepared for the exerc…
  • Anonymous
    Like many of my fellow reviewers, I was not satisfied with the quality and level of instruction for this course. The content was really light and fast, with little examples. The course production itself was kind of choppy, with the lecturer being…
  • Paulo Eduardo Neves
    I really appreciated this course. The assignments are excellent, but they took me more time than the announced.

    The ability to submit your assignments and have them automatically corrected, even if you are note paying for the certificate, is great.

    I just think that maybe it is a "too hard" introduction. You must already know python, and, I'd say, should have already studied a little of pandas. The explanation of pandas is really quick, but full of valuable real world tips.

    For the assignments you'll need a lot of pandas knowledge that isn't the videos, so prepare for a lot of searching in StackOverflow and in the docs. I believe it is purposeful, so the assignments mimics a real world problem.

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.