Chevron Left
Back to Introduction to Data Science in Python

Learner Reviews & Feedback for Introduction to Data Science in Python by University of Michigan

4.5
stars
26,908 ratings

About the Course

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

Top reviews

YH

Sep 28, 2021

This is the practical course.There is some concepts and assignments like: pandas, data-frame, merge and time. The asg 3 and asg4 are difficult but I think that it's very useful and improve my ability.

PK

May 9, 2020

The course had helped in understanding the concepts of NumPy and pandas. The assignments were so helpful to apply these concepts which provide an in-depth understanding of the Numpy as well as pandans

Filter by:

5551 - 5575 of 5,918 Reviews for Introduction to Data Science in Python

By Alan S

•

Oct 13, 2017

The topics covered in the course are certainly important for anyone interested in using Python for Data Science, but sadly, there is only really basic information about each topic taught in the videos. In the labs, there is heavy focus on "self learning" (basically, the instructor encourages you to use StackOverflow and other resources to figure out things that were intentionally not taught in the course).

While it's interesting that the problems have a very real-world nature to them (including searching the web to help you find answers to things), if I wanted to learn the tools taught in this course that way, I wouldn't have enrolled in this, and just got a good book and practiced myself independently.

Also puzzling is that there are weird "discussion" segments that have no relevance to any of the topics taught. One moment you are learning about pandas dataframes, and the next, it's asking you for a 90 word opinion on data science ethics. This is somewhat ironic given the otherwise very practical/applied nature of the course. Not relevant at all to a working professional.

One other note: as I write this, for the past few days, no students were able to get their assignments graded, since the auto-grader was broken, and there are multiple reports of this in the forums. It's puzzling the staff let this problem persist for days with no ETA or acknowledgement of the issue.

By Kevin Y

•

Feb 8, 2017

Overall, this course is tough for me. In my opinion, the course title is not suitable, which is "introduction". The word "introduction" generally means something basic and fundamental. However, the level programming assignments in this course is between slightly medium and very hard.

Furthermore, the assignment instructions are not clear enough, i.e. what steps need to be followed to complete each question. So, it needs time for me to find the way or solution in the discussion forum. I know in each week forum, there is one discussion specifically for assignment (i.e. Assignment X Tips), which is good. But, I think the forum is not a good place, since we have to find it meticulously the information and what we want to find is spread out, not in an easy to follow order.

Moreover, I do not think the lectures and the assignments are well synchronized as there are many things in assignments that are outside from the lectures. I mean, it is "too many" new things in the assignment. Although it is a great way for the students to search and enhance their skills by themselves, in general, the assignments should at least reflect the lectures.

Lastly, in my humble opinion, this course is not appropriate for someone who is new to programming and has not been familiar or mastered any programming languages, though the title is "introduction".

By George A

•

Jul 16, 2019

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 data. But the real problem with this course isn't the material, it's the lectures and the autograder. The lectures are very short. They don't cover the concepts well enough, and some material is blatantly skipped and you have to learn it yourself through google. Then comes the video quizzes which test you on functions and concepts that haven't even been introduced yet. It's like the quizzes were put at timestamps randomly. Then comes the worst part of the course: the Autograder. I'm not sure how old this course is but the autograder is running on an outdated version of both python and pandas. What does this mean for you? Well if you want to code on your computer instead of the course's broken online coding notebook, you will run into severe code-breaking bugs between versions. It really ruins the course. I learn the material but then spend hours trying to please the broken autograder. Most of the time in this course isn't spent learning, it's spent fixing code that the autograder rejects even though it runs perfectly on your machine locally. Have fun!

By Isaac D

•

Jun 7, 2018

When ones motivation for taking a course switches from learning as much as possible to wanting to finish the course in order to leave a review warning others not to take the course until the numerous structural issues with the course are resolved then something has gone very wrong. The course materials are okay for an intermediate course. Just 'okay'. Not good. Not great. Certainly a substantial step down from the wonderful 'Python for Everybody' courses which, by the way, are inadequate preparation for this course despite the Dr. Brooks' claim. That said, the main issue with this course lies in its incredibly vague and poorly thought out assignments. If you are actually decent with Python you will, in all likelihood, spend more time fighting with the Jupyter notebooks and auto-grader than you will actually completing the assignments. If you're newer to programming expect to spend at least five times as much time on each assignment as the estimated completion time suggests. Also, good luck if you actually need help, as this course has the most aggressive enforcement of Coursera's honor code that I have seen on this site which means that you are SOL if you need help on a problem. In short, I would recommend that no one take this course until the numerous issues with it are provably fixed.

By bob l

•

Apr 18, 2022

The lectures are good.  The quizzes are silly, because they test mostly esoteric knowledge that I would look up when I need it rather than the basic understanding needed to do real data science work, data cleaning in particular.  The projects are also unnecessarily complicated to the point that someone from the course has to post examples for almost all questions.  If we are going to receive that kind of general help, why not just make the explanations better?  In the real world, I would simply ask the project stakeholders questions when something is ambiguous.  Requirements gathering is not an objective of this course though and simply looking in the forums for explanations does nothing to advance that goal even if it was within the scope of this class.  The goal of this course should be to give the student an understanding of the tools involved, not do a lot of gymnastics to understand vague instructions and then apply oddly specific pandas functionality.  I say all of this as someone who has been doing data cleaning with python/pandas for several years and was looking to just formalize things I have learned as needed.  I will probably not bother to complete the course, because the final assignment and quiz have no real learning value and a Coursera completion certificate is of little value.

By Markus

•

Apr 2, 2017

Thanks for the course. A few things that can be improved:

1- The video material was very short. I expected same amount of teaching like homework, but it's more like 30 minutes versus 7 hours every week. As a result it's mostly googling and copy-pasting code, which I'm very sceptical if solving issues this way will enter my long-term memory. Probably next time I will need to look it up again. I'd prefer if the videos were the source of knowledge instead of stack overflow and the forum.

2 - As an experienced programmer but being new to Python I found it difficult to load the data. I was not aware that the files are available on the server and can just be loaded by read_csv(filename.csv). Instead I tried to load the files from my local drive, which worked, but not for the grader. Then I tried to submit it offline which also failed. I wasted half a day on this. I suggest to mention quickly how the online and offline assignments work, in particular in how to load data.

3 - The feedback from the grader is usually not telling much. It was often unclear to me what was the expected outcome. I think a screenshot of the expected answer for the more advanced questions (first few rows+columns) would help a lot and save us a lot of suffering.

By Ivan K

•

Aug 25, 2020

Four year old instructional content. Four year old versions of pandas and other libraries. $50/month for 4 year old content??

The course relied on very basic functions and libraries in pandas and numpy. I doubt that any of the specific skills and content taught here would transition very well to a professional or academic context.

Why is it so hard to find a real practical Python data science course?

I'm also pretty sure there were errors some of in-video quizzes. And there exists a broken link to Chris Anderson's Wired Article entitled "The End of Theory..." that has been broken for the past 3 years at least when I checked on discussions for the article.

This course in general has sat here for 3-4 years seemingly unmaintained (see the broken quizzes and links above) and unchanged (see the 4 year old videos and libraries above) just yearning money for Coursera and UMich with little to no evidence of improvements or basic maintenance. I think it's shameful that I am being charged $50/month for access to these materials and the grading system which quite frankly has stymied and stunted the growth and improvements to the course material overall.

By YUE C

•

Jan 7, 2017

Content is actually very good, I can feel the content creator and staffs emphasis on real world problems. Projects and Assignments are quite useful, and I can expect to use skills I acquired in my day to day work. However, the most agonizing parts of this course is it requires tremendous of time to do self-study. I spend tons of time on google search, reading docs and go over other people's post on various forums in order to find the right way(sometimes optimal way) to finish the assignments. I understand and accept that self-study is very import to master things nowadays, but I really think gap is too big between what was taught in class and what you need to complete this course, especially for people that has zero data science programming experience like me.

I'd rather spend time watching 2 more hours of teaching videos per week that can cover more aspects/topics/tips/tricks than go over lots of docs and posts. I won't deny I learned a lot through this course, but I believe my learning curve can be flatten significantly if there is more class materials available. If the majority of course is spent on googling, what's the point to take it?

By Waleed S

•

Jun 3, 2022

I have just started Week 1 course and it seems so painful that I wouldn't continue with this course. Unfortunately, I hadn't started the course earlier so the Return window has closed. I would not recommend this course as it isn't worth the cost.

Issues that need fixing -

1. Please don't use a live background behind the instructor, every movement in the background is distracting

2. The audio and code scripts don't align in most cases, which is difficult to follow, please correct. It is easier to just view the code example in the Notebook

3. It would be great to actually be prompted Right/Wrong on the interactive questions. It just displays the answer and then a solution

4. Instructor spends too much time talking some times where we need to watch him and there is no other content being presented, which seems very awkward. I would prefer to see actual code with a voice over in the background or atleast keep the instructor camera sessions to a minimum

5. The session could be driven more from Jupyter notebooks, but the video skips back to the Instructor's face so quickly that it doesn't give me time to look at what is being done in the code

By Patrick L

•

Jun 7, 2020

I wasted hours learning outdated code. I read on the course forums that the course is soon to be updated (July 2020?), but the course I did (May-June 2020) was developed in 2016, and quite a bit of the code that was taught was out of date. These courses should be reviewed for currency at least every year, and the failure to do so is reflective of poor quality control and also not the highest regard for students' time. My other criticisms are that the pace of the course was too fast - too much was covered in four weeks - and that the assignments made me rely too much on teaching myself. Some teaching of oneself is fine - we learn how to teach ourselves - but in this course it was just too much. I spent far more time on the course than the course overview suggested. Having said all this, I did learn quite a bit during the course, and Professor Brooks seems like a genuinely nice guy. As well as that, the readings on topics to do with data science were really interesting. So - overall, a frustrating course that teaches a decent amount inefficiently.

By Ronan R

•

Apr 5, 2020

Why are these people in a hurry???

I had to reduce the video speed to 0.75x to get through all the material, because they do not give you time to process anything. There is a video of a guy 'teaching' the numpy module where he spits out 185 numpy functions in less than 8 minutes, and that means 1 FUNCTION EVERY 2.5 SECONDS!! Who in the world can learn like this? I can only assume they are making these videos to show off how much they know instead of actually teaching. They should have given numpy a whole week instead of just one hasty video. And I feel that way about many of the other python modules they cover.

The projects are indeed challenging and that is fine. However, they are often putting questions on the graded assignments for things they didn't actually cover yet. They show you how to do A and then expect you to do ABCDEF on the graded assignments. Furthermore, the assignment questions are just badly worded, creating a lot of confusion and unnecessary stress (as seen in the course discussion forums).

By Evgenii L

•

Sep 16, 2023

I do not recommend this course. First, the provided material is not sufficient to pass the assignments. Assignments in W3 and W4 require high level of comfort with pandas, and to good extent with numpy. There is not enough practice in this course to get there, and then, some assignment element dive into specifics that are a) not covered in the course at all, and b) require not only theoretical knowledge of these libraries but also practical experience. The optional recommended book is in fact not optional. Alternative is to comb through many external tutorials, but then, why bother taking this course?

Now, I have over 20 years with Python, databases, corporate systems, and with business (non-data) analysis. I was really struggling, as I happened to have never worked with pandas before. Prior experience with pandas shall really be an entry requirement for this course.

I did pass it, with 100%, as I never give up. But it was not a good experience, and I have seen people on forum rage-quitting this course.

By Elias A M R

•

May 30, 2020

This course needs to be more user-friendly. I observed that video explanations way go too fast when they are typing code at the same time, so I felt like I had to simultaneously digest the explanation while also learning the code syntax, that is not friendly at all. I found myself many time re-watching and pausing the videos so that I could understand each step of the code. The course content is good, but I would compare this course to one of those classes were the content is really good but is not properly conveyed to the audience, specially when the audience is people with no previous experience with Pandas. Also, I get the point of going to Stack Overflow and consulting the Pandas the documentation to complete each weekly assignment, but what is the point on doing all that when I am taking a paid class precisely to be explained those concepts, I do not get it, if that is the philosophy behind the course, then it is flawed, it is just better to tell students ''go learn Pandas on your own".

By Evan B

•

Dec 6, 2016

The course gives practice in Python, but programming assignments were loaded with "busy work" that added little value and often had only loose ties to the material discussed in class. While this forces more independent learning, it also makes it so that this course isn't really much better than free online tutorials. I found myself learning almost everything for the programming assignments from the pandas package documentation and from Google searches that led to stackoverflow. For an instructor from the University of Michigan whose bio says "I work with colleagues to design tools to better the teaching and learning experience in higher education," I was expecting a lot more value for the time spent in this class. I suspect that this course is being used to provide data for furthering his own research. It's often more difficult to maximize value to customers when personal incentives may not be perfectly aligned with customer (student) objectives.

By Stefan A

•

Jan 29, 2023

This course could benefit from some improvements in organization and structure. The amount of time required for lectures and assignments can be inconsistent, making it difficult for learners to plan ahead. Additionally, the lectures could be more focused and better organized, for example by starting from best practices rather than common mistakes. The use of technical terms could be clearer. Some of the examples provided also contain errors or outdated code. The assignments also have room for improvement. Instructions are often confusing and, in some cases, grammatically not quite correct. Some assignments require learners engage in questionable data practices (e.g. incomplete data cleanup) for submissions to be graded as 'correct'. Furthermore, some of the latter assignments place an excessive burden on learners to educate themselves on key procedures and functions, which doesn't seem to align with the learning objectives of this course.

By Srinivasan L

•

Oct 30, 2017

This is not an organized course by any means. The lectures do not cover much and assignments are incredibly tough to the point that each requires more than a week by themselves.

For context, I have completed the Python Specialization by Dr.Chuck (Which was incredible!) and have an Fulltime-Masters in Engineering. One of my main motivation for taking this course is to learn all the topics in well structured manner but I don't understand what Dr. Brooks trying to do with his bizarre way of 'teaching'. Unfortunately, Dr. Brooks just points to StackOverFlow for everything rather than explaining the concepts by himself.

Currently, I am just learning through various Pandas Lectures in youtube and attempting the assignment (which is harder than most assignments I have completed in my college!!). Unless you have great motivation to learn by yourself, this course would be very hard to complete.

By Linda S

•

Apr 5, 2022

This course did not provide the quality intermediate content that I was expecting. The lectures present material at a lower level with instructions to read elsewhere for further information. The lecturer is clearly versed in the topic but did not invest a lot of time in designing this course. The problem set gave me a chance to implement what I learned elsewhere but it was also frustrating dealing with the autograder. Also I felt like a lot of time was invested in unnecessary tasks like digging through an 80pg document to find the column name of the metric I needed to use to solve a homework problem. I can respect that this is how things go in real life but I took the class to learn intermediate python techniques for data analysis...

The only reason I am giving this course 2 stars is becuase the mentors and helpers are motivated and quick to help when people post questions.

By emma b

•

Jan 21, 2017

While the material is undoubtedly useful, te structure of the assessments is not very helpful. For example, in week 3 we are asked to create data frames from input files: these are presented in descending order of complexity for cleanup. Furthermore, the points for most of the questions are 6.66, despite what are very different demands fore each part. In the final week, the dictionary of state names is counterproductive in answering part one (some state names are region names) and one can either get 100% or one fails the course (as one question is worth 50% of the grade.)

Some of the autograder feedback is so terse as to be downright infuriating. Add to that frequent issues with the notebook crashing and much of this coursework was an exercise in unnecessary frustration rather than increasing enlightenment.

By David M

•

Sep 26, 2018

Primary instructor is very good and very clear. Although I feel that in the MOOC format he could have spent more time going through the mechanisms going on underneath (even if you don’t need it to complete the problem sets). However the lectures from the assistant are poor - he seems to speak without explaining anything.

Major issue is the problem sets themselves. Some of the questions are really poorly written (and I think in some cases wrong). For example in week 4 I spent longer trying to debug a question (that I got right) than I spent on the whole week put together; the answer being something that wasn’t explicitly asked for in the question.

If you’ take the course read the forums... there are dozens of posts from students (and teaching assistants) complaingin about the questions.

By Ruth P C

•

Feb 24, 2020

Unfortunately, the course delivery style was not right for me. The profesor background is good, but the teaching style is too much talking (difficult to remember), and that doesn't helps to understand Pandas or Numpy concepts. There were very few visual aids. The course uses Jupyter notebooks with code examples, it would really help to add some written explanation to them, because the explanation in the video goes too fast. It would be great to have more practice to construct gradually the knowledge at least at the beginning. Most of the learning was on my own reading books, python docs which does not focus on conceptual explanation, and using stackoverflow as it was recommended during the course. This course is for somebody that does not expect much guidance or explanation.

By WARDA I

•

May 27, 2020

il manque beaucoup de théorie, je me suis retrouvée à perdre énormément de temps à chercher sur internet pour pouvoir répondre aux Assignement. Au point, on l'on se demande à quoi sert le cours (version video) à la base, car si on nous avait donné les Assignement seuls sans le cours ça aurait été pareil !

c'est à dire que : durant le cours je n'ai absolument rien appris ! De plus, le fait que le cours soit fait dans dans l'open space et qu'on voit les gens travailler, boire de l'eau .... ça déconcentre énormément.

Néanmoins, comme que suite aux recherches que j'ai fait j'ai appris beaucoup de chose et ça été grâce aux assignements qui même les questions étaient assez vagues (exemple total ou top ?? ça prêtait à confusion )

C'est pour ça que je donne une note de 2/5.

merci

By Andrew M

•

Apr 22, 2020

Completed the first course but probably won't continue.

U of M auto-grader uses an old version of Python (3.6) and an ancient version of Pandas (0.20.2), so after you code everything up in 3.7.7, you have to go back and try to get it to work in 3.6 and old Pandas. This just comes down to how you want to spend your time in life: learning and solving problems or messing around with an old auto-grader.

This is a total waste of time and effort. There is no reason to spend time doing this just to appease the auto-grader.

I was considering the Data Science Masters program, too, but I want to learn, not fight old versions of Python and Pandas. Good to know now, I guess! What a shame. This series could have been great!

By Michael A

•

Nov 22, 2016

Course teaches Python Pandas in a very practical way and I'm sure now having learnt it I'll use the skill. But this course wasn't taught well. Weekly assignments asked questions about skills that had not been taught yet. The course coordinators didn't respond or help in the forums, The topic area deserves more in depth video lectures and discussion. All the above basically means that passing the weekly assignments takes longer than you may assume. Had the course been taught and tested more effectively then doing the weekly assignments would less frustrating and time consuming.

Basically the course is good, but it requires much more work and research because of the poor way its caught and monitored by staff.

By Varun

•

Apr 18, 2018

Course content is very scarce as compared to what is asked in assignments. No explanation is give to what function does and what should be its inputs and outputs. Unlike Professor chuck's course this course is very tough and not at all an introductory course. Assignments take 4x more time than mentioned in course content. Overall a very heavy work for student to go through other online materials to understand what each function does. It feels like I have learnt alot from other websites than in this course. What is the point in taking a course if I have to go through other materials from some other website? Please change course content, make videos more elaborative, reduce the difficulty of assignments.