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 25961 ratings

Start your review of Introduction to Data Science in Python

  • Profile image for Paul Leitner
    Paul Leitner

    Paul Leitner is taking this course right now.

    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 course...
  • Anonymous

    Anonymous completed this course.

    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 expected...
  • Profile image for Rtodyssey

    Rtodyssey completed this course, spending 6 hours a week on it and found the course difficulty to be hard.

    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 of...
  • Anonymous

    Anonymous completed this course.

    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

    Anonymous is taking this course right now.

    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

    D C is taking this course right now.

    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

    Anonymous is taking this course right now.

    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
    This course is a real waste of time! Please avoid!! The lecturer in general teaches nothing. He explains some basic concepts. You can learn them in a 5 minutes YouTube video. Then, you should answer the detailed/technical coding assignments. The assignments...
  • Graham C

    Graham C completed this course, spending 8 hours a week on it and found the course difficulty to be medium.

    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!
  • Anonymous

    Anonymous is taking this course right now.

    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.
  • Profile image for Julián Urrea
    Julián Urrea

    Julián Urrea completed this course.

    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...
  • Anonymous

    Anonymous completed this course.

    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

    Anonymous is taking this course right now.

    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.
  • Juan Velasquez

    Juan Velasquez is taking this course right now.

    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.
  • Profile image for Jeff Trawick
    Jeff Trawick

    Jeff Trawick is taking this course right now, spending 4 hours a week on it and found the course difficulty to be medium.

    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 not...
  • Anonymous

    Anonymous is taking this course right now.

    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

    Anonymous completed this course.

    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
    The lectures barely scratch the surface of Python.

    Their assignment is absurdly difficult given their poor lectures and information provided.

    I took the course using 7-day trial for Coursera and it was the worst.

  • Anonymous

    Anonymous completed this course.

    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 of...
  • Anonymous

    Anonymous completed this course.

    This is a very basic course. Having completed the Data Science Specialization from Johns Hopkins University in Coursera this course felt a bit too broad and lacking depth. If you need some excuse to start learning Python by yourself maybe this is it. But don't expect to become profficient just by passing this course. Assignments are machine graded.

    Make sure to read the forums as there is no chance of successfully completing assignments as they are poorly explained.

Never Stop Learning.

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