Overview
The 5 courses in this University of Michigan specialization introduce learners to data science through the python programming language. This skills-based specialization is intended for learners who have a basic python or programming background, and want to apply statistical, machine learning, information visualization, text analysis, and social network analysis techniques through popular python toolkits such as pandas, matplotlib, scikit-learn, nltk, and networkx to gain insight into their data.
Introduction to Data Science in Python (course 1), Applied Plotting, Charting & Data Representation in Python (course 2), and Applied Machine Learning in Python (course 3) should be taken in order and prior to any other course in the specialization. After completing those, courses 4 and 5 can be taken in any order. All 5 are required to earn a certificate.
Syllabus
Course 1: Introduction to Data Science in Python
- Offered by University of Michigan. This course will introduce the learner to the basics of the python programming environment, including ... Enroll for free.
Course 2: Applied Plotting, Charting & Data Representation in Python
- Offered by University of Michigan. This course will introduce the learner to information visualization basics, with a focus on reporting and ... Enroll for free.
Course 3: Applied Machine Learning in Python
- Offered by University of Michigan. This course will introduce the learner to applied machine learning, focusing more on the techniques and ... Enroll for free.
Course 4: Applied Text Mining in Python
- Offered by University of Michigan. This course will introduce the learner to text mining and text manipulation basics. The course begins ... Enroll for free.
Course 5: Applied Social Network Analysis in Python
- Offered by University of Michigan. This course will introduce the learner to network analysis through tutorials using the NetworkX library. ... Enroll for free.
- Offered by University of Michigan. This course will introduce the learner to the basics of the python programming environment, including ... Enroll for free.
Course 2: Applied Plotting, Charting & Data Representation in Python
- Offered by University of Michigan. This course will introduce the learner to information visualization basics, with a focus on reporting and ... Enroll for free.
Course 3: Applied Machine Learning in Python
- Offered by University of Michigan. This course will introduce the learner to applied machine learning, focusing more on the techniques and ... Enroll for free.
Course 4: Applied Text Mining in Python
- Offered by University of Michigan. This course will introduce the learner to text mining and text manipulation basics. The course begins ... Enroll for free.
Course 5: Applied Social Network Analysis in Python
- Offered by University of Michigan. This course will introduce the learner to network analysis through tutorials using the NetworkX library. ... Enroll for free.
Courses
-
This course will introduce the learner to information visualization basics, with a focus on reporting and charting using the matplotlib library. The course will start with a design and information literacy perspective, touching on what makes a good and bad visualization, and what statistical measures translate into in terms of visualizations. The second week will focus on the technology used to make visualizations in python, matplotlib, and introduce users to best practices when creating basic charts and how to realize design decisions in the framework. The third week will be a tutorial of functionality available in matplotlib, and demonstrate a variety of basic statistical charts helping learners to identify when a particular method is good for a particular problem. The course will end with a discussion of other forms of structuring and visualizing data. This course should be taken after Introduction to Data Science in Python and before the remainder of the Applied Data Science with Python courses: Applied Machine Learning in Python, Applied Text Mining in Python, and Applied Social Network Analysis in Python.
-
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.
-
This course will introduce the learner to text mining and text manipulation basics. The course begins with an understanding of how text is handled by python, the structure of text both to the machine and to humans, and an overview of the nltk framework for manipulating text. The second week focuses on common manipulation needs, including regular expressions (searching for text), cleaning text, and preparing text for use by machine learning processes. The third week will apply basic natural language processing methods to text, and demonstrate how text classification is accomplished. The final week will explore more advanced methods for detecting the topics in documents and grouping them by similarity (topic modelling). This course should be taken after: Introduction to Data Science in Python, Applied Plotting, Charting & Data Representation in Python, and Applied Machine Learning in Python.
-
This course will introduce the learner to applied machine learning, focusing more on the techniques and methods than on the statistics behind these methods. The course will start with a discussion of how machine learning is different than descriptive statistics, and introduce the scikit learn toolkit through a tutorial. The issue of dimensionality of data will be discussed, and the task of clustering data, as well as evaluating those clusters, will be tackled. Supervised approaches for creating predictive models will be described, and learners will be able to apply the scikit learn predictive modelling methods while understanding process issues related to data generalizability (e.g. cross validation, overfitting). The course will end with a look at more advanced techniques, such as building ensembles, and practical limitations of predictive models. By the end of this course, students will be able to identify the difference between a supervised (classification) and unsupervised (clustering) technique, identify which technique they need to apply for a particular dataset and need, engineer features to meet that need, and write python code to carry out an analysis. This course should be taken after Introduction to Data Science in Python and Applied Plotting, Charting & Data Representation in Python and before Applied Text Mining in Python and Applied Social Analysis in Python.
-
This course will introduce the learner to network analysis through tutorials using the NetworkX library. The course begins with an understanding of what network analysis is and motivations for why we might model phenomena as networks. The second week introduces the concept of connectivity and network robustness. The third week will explore ways of measuring the importance or centrality of a node in a network. The final week will explore the evolution of networks over time and cover models of network generation and the link prediction problem. This course should be taken after: Introduction to Data Science in Python, Applied Plotting, Charting & Data Representation in Python, and Applied Machine Learning in Python.
Taught by
Christopher Brooks, Daniel Romero, Kevyn Collins-Thompson and V. G. Vinod Vydiswaran