Nanodegree key: nd118
Version: 5.0.0
Locale: en-us
The course is designed to teach the principles of data science using R programming.
Content
Part 01 : Welcome to the Nanodegree
-
Module 01: Welcome to the Nanodegree
-
Lesson 01: Welcome to the Nanodegree
Welcome to the Programming for Data Science Nanodegree program! In this lesson, you will learn more about the structure of the program and meet the team.
-
Lesson 02: The Life of the Data Scientist
In this lesson, you'll hear from a few data analysts and data scientists about what it's like to work in data analytics.
-
Lesson 03: Nanodegree Career Services
The Careers team at Udacity is here to help you move forward in your career - whether it's finding a new job, exploring a new career path, or applying new skills to your current job.
-
Part 02 : SQL for Data Analysis
-
Module 01: SQL for Data Analysis
-
Lesson 01: Basic SQL
In this section, you will gain knowledge about SQL basics for working with a single table. You will learn the key commands to filter a table in many different ways.
- Concept 01: Video: SQL Introduction
- Concept 02: Video: The Parch & Posey Database
- Concept 03: Video + Text: The Parch & Posey Database
- Concept 04: Quiz: ERD Fundamentals
- Concept 05: Video: Why SQL
- Concept 06: Video: How Databases Store Data
- Concept 07: Types of Databases
- Concept 08: Video: Types of Statements
- Concept 09: Statements
- Concept 10: Video: SELECT & FROM
- Concept 11: Your First Queries in SQL Workspace
- Concept 12: Solution: Your First Queries
- Concept 13: Formatting Best Practices
- Concept 14: Video: LIMIT
- Concept 15: Quiz: LIMIT
- Concept 16: Solution: LIMIT
- Concept 17: Video: ORDER BY
- Concept 18: Quiz: ORDER BY
- Concept 19: Solutions: ORDER BY
- Concept 20: Video: ORDER BY Part II
- Concept 21: Quiz: ORDER BY Part II
- Concept 22: Solutions: ORDER BY Part II
- Concept 23: Video: WHERE
- Concept 24: Quiz: WHERE
- Concept 25: Solutions: WHERE
- Concept 26: Video: WHERE with Non-Numeric Data
- Concept 27: Quiz: WHERE with Non-Numeric
- Concept 28: Solutions: WHERE with Non-Numeric
- Concept 29: Video: Arithmetic Operators
- Concept 30: Quiz: Arithmetic Operators
- Concept 31: Solutions: Arithmetic Operators
- Concept 32: Text: Introduction to Logical Operators
- Concept 33: Video: LIKE
- Concept 34: Quiz: LIKE
- Concept 35: Solutions: LIKE
- Concept 36: Video: IN
- Concept 37: Quiz: IN
- Concept 38: Solutions: IN
- Concept 39: Video: NOT
- Concept 40: Quiz: NOT
- Concept 41: Solutions: NOT
- Concept 42: Video: AND and BETWEEN
- Concept 43: Quiz: AND and BETWEEN
- Concept 44: Solutions: AND and BETWEEN
- Concept 45: Video: OR
- Concept 46: Quiz: OR
- Concept 47: Solutions: OR
- Concept 48: Text: Recap & Looking Ahead
-
Lesson 02: SQL Joins
In this lesson, you will learn how to combine data from multiple tables together.
- Concept 01: Video: Motivation
- Concept 02: Video: Why Would We Want to Split Data Into Separate Tables?
- Concept 03: Video: Introduction to JOINs
- Concept 04: Text + Quiz: Your First JOIN
- Concept 05: Solution: Your First JOIN
- Concept 06: Text: ERD Reminder
- Concept 07: Text: Primary and Foreign Keys
- Concept 08: Quiz: Primary - Foreign Key Relationship
- Concept 09: Text + Quiz: JOIN Revisited
- Concept 10: Video: Alias
- Concept 11: Quiz: JOIN Questions Part I
- Concept 12: Solutions: JOIN Questions Part I
- Concept 13: Video: Motivation for Other JOINs
- Concept 14: Video: LEFT and RIGHT JOINs
- Concept 15: Text: Other JOIN Notes
- Concept 16: LEFT and RIGHT JOIN
- Concept 17: Solutions: LEFT and RIGHT JOIN
- Concept 18: Video: JOINs and Filtering
- Concept 19: Quiz: Last Check
- Concept 20: Solutions: Last Check
- Concept 21: Text: Recap & Looking Ahead
-
Lesson 03: SQL Aggregations
In this lesson, you will learn how to aggregate data using SQL functions like SUM, AVG, and COUNT. Additionally, CASE, HAVING, and DATE functions provide you an incredible problem solving toolkit.
- Concept 01: Video: Introduction to Aggregation
- Concept 02: Video: Introduction to NULLs
- Concept 03: Video: NULLs and Aggregation
- Concept 04: Video + Text: First Aggregation - COUNT
- Concept 05: Video: COUNT & NULLs
- Concept 06: Video: SUM
- Concept 07: Quiz: SUM
- Concept 08: Solution: SUM
- Concept 09: Video: MIN & MAX
- Concept 10: Video: AVG
- Concept 11: Quiz: MIN, MAX, & AVG
- Concept 12: Solutions: MIN, MAX, & AVG
- Concept 13: Video: GROUP BY
- Concept 14: Quiz: GROUP BY
- Concept 15: Solutions: GROUP BY
- Concept 16: Video: GROUP BY Part II
- Concept 17: Quiz: GROUP BY Part II
- Concept 18: Solutions: GROUP BY Part II
- Concept 19: Video: DISTINCT
- Concept 20: Quiz: DISTINCT
- Concept 21: Solutions: DISTINCT
- Concept 22: Video: HAVING
- Concept 23: HAVING
- Concept 24: Solutions: HAVING
- Concept 25: Video: DATE Functions
- Concept 26: Video: DATE Functions II
- Concept 27: Quiz: DATE Functions
- Concept 28: Solutions: DATE Functions
- Concept 29: Video: CASE Statements
- Concept 30: Video: CASE & Aggregations
- Concept 31: Quiz: CASE
- Concept 32: Solutions: CASE
- Concept 33: Text: Recap
-
Lesson 04: SQL Subqueries & Temporary Tables
In this lesson, you will be learning to answer much more complex business questions using nested querying methods - also known as subqueries.
- Concept 01: Video: Introduction
- Concept 02: Video: Introduction to Subqueries
- Concept 03: Video + Quiz: Write Your First Subquery
- Concept 04: Solutions: Write Your First Subquery
- Concept 05: Text: Subquery Formatting
- Concept 06: Video: More On Subqueries
- Concept 07: Quiz: More On Subqueries
- Concept 08: Solutions: More On Subqueries
- Concept 09: Quiz: Subquery Mania
- Concept 10: Solution: Subquery Mania
- Concept 11: Video: WITH
- Concept 12: Text + Quiz: WITH vs. Subquery
- Concept 13: Quiz: WITH
- Concept 14: Solutions: WITH
- Concept 15: Video: Subquery Conclusion
-
Lesson 05: SQL Data Cleaning
Cleaning data is an important part of the data analysis process. You will be learning how to perform data cleaning using SQL in this lesson.
- Concept 01: Video: Introduction to SQL Data Cleaning
- Concept 02: Video: LEFT & RIGHT
- Concept 03: Quiz: LEFT & RIGHT
- Concept 04: Solutions: LEFT & RIGHT
- Concept 05: Video: POSITION, STRPOS, & SUBSTR
- Concept 06: Quiz: POSITION, STRPOS, & SUBSTR - AME DATA AS QUIZ 1
- Concept 07: Solutions: POSITION, STRPOS, & SUBSTR
- Concept 08: Video: CONCAT
- Concept 09: Quiz: CONCAT
- Concept 10: Solutions: CONCAT
- Concept 11: Video: CAST
- Concept 12: Quiz: CAST
- Concept 13: Solutions: CAST
- Concept 14: Video: COALESCE
- Concept 15: Quiz: COALESCE
- Concept 16: Solutions: COALESCE
- Concept 17: Video + Text: Recap
-
Lesson 06: SQL Window Functions
Compare one row to another without doing any joins using one of the most powerful concepts in SQL data analysis: window functions.
- Concept 01: Video: Introduction to Window Functions
- Concept 02: Video: Window Functions 1
- Concept 03: Quiz: Window Functions 1
- Concept 04: Solutions: Window Functions 1
- Concept 05: Quiz: Window Functions 2
- Concept 06: Solutions: Window Functions 2
- Concept 07: Video: ROW_NUMBER & RANK
- Concept 08: Quiz: ROW_NUMBER & RANK
- Concept 09: Solutions: ROW_NUMBER & RANK
- Concept 10: Video: Aggregates in Window Functions
- Concept 11: Quiz: Aggregates in Window Functions
- Concept 12: Solutions: Aggregates in Window Functions
- Concept 13: Video: Aliases for Multiple Window Functions
- Concept 14: Quiz: Aliases for Multiple Window Functions
- Concept 15: Solutions: Aliases for Multiple Window Functions
- Concept 16: Video: Comparing a Row to Previous Row
- Concept 17: Quiz: Comparing a Row to Previous Row
- Concept 18: Solutions: Comparing a Row to Previous Row
- Concept 19: Video: Introduction to Percentiles
- Concept 20: Video: Percentiles
- Concept 21: Quiz: Percentiles
- Concept 22: Solutions: Percentiles
- Concept 23: Video: Recap
-
Lesson 07: SQL Advanced JOINS & Performance Tuning
Learn advanced joins and how to make queries that run quickly across giant datasets. Most of the examples in the lesson involve edge cases, some of which come up in interviews.
- Concept 01: Video: Introduction to Advanced SQL
- Concept 02: Text + Images: FULL OUTER JOIN
- Concept 03: Quiz: FULL OUTER JOIN
- Concept 04: Solutions: FULL OUTER JOIN
- Concept 05: Video: JOINs with Comparison Operators
- Concept 06: Quiz: JOINs with Comparison Operators
- Concept 07: Solutions: JOINs with Comparison Operators
- Concept 08: Video: Self JOINs
- Concept 09: Quiz: Self JOINs
- Concept 10: Solutions: Self JOINs
- Concept 11: Video: UNION
- Concept 12: Quiz: UNION
- Concept 13: Solutions: UNION
- Concept 14: Video: Performance Tuning Motivation
- Concept 15: Video + Quiz: Performance Tuning 1
- Concept 16: Video: Performance Tuning 2
- Concept 17: Video: Performance Tuning 3
- Concept 18: Video: JOINing Subqueries
- Concept 19: More Practice!
- Concept 20: Video: SQL Completion Congratulations
-
Lesson 08: Investigate a Relational Database
The Sakila Movie database is a SQL database of online DVD rentals . You will query the database to answer questions about business decisions.
- Concept 01: Project Overview
- Concept 02: Project Details
- Concept 03: Workspace vs. Local environment
- Concept 04: Set Up Your Local Environment
- Concept 05: Composite Key
- Concept 06: Workspace: DVD Rental Database
- Concept 07: Understanding the database
- Concept 08: Practice Quiz #1
- Concept 09: Practice Solution #1
- Concept 10: Practice Quiz #2
- Concept 11: Practice Solution #2
- Concept 12: Workspace + Question Set #1
- Concept 13: Workspace + Question Set #2
- Concept 14: Project Submission
- Concept 15: Common Mistakes
- Concept 16: Helpful strategies
-
Part 03 : R Programming
-
Module 01: R Programming
-
Lesson 01: Introduction to R
In this lesson, you will learn about why R is so popular for Data Analysis, learn how to set up R on your own machine, and see how you can use R directly within the classroom.
- Concept 01: Why R
- Concept 02: What's Ahead
- Concept 03: Instructors
- Concept 04: Using Windows?
- Concept 05: Install RStudio on Windows
- Concept 06: Install RStudio on a Mac
- Concept 07: RStudio Layout
- Concept 08: Getting Help
- Concept 09: Classroom Notebooks
- Concept 10: Advice for Data Scientists
- Concept 11: Recap
-
Lesson 02: Syntax & Data Types
In this lesson, gain an understanding of how to interact with the R interpreter and the different data types available in R.
- Concept 01: Lesson Preview
- Concept 02: What's Ahead
- Concept 03: R, Python, and Matlab Similarities
- Concept 04: R, Python, and Matlab Differences
- Concept 05: Notebooks and Workspaces
- Concept 06: Graffiti Tutorial
- Concept 07: Spaces & Comments [Text]
- Concept 08: Spaces & Comments [Graffiti]
- Concept 09: Data Types [Text]
- Concept 10: Data Types [Graffiti]
- Concept 11: Data Types [Quiz]
- Concept 12: Scalars [Video]
- Concept 13: Vectors [Text]
- Concept 14: Vectors [Graffiti]
- Concept 15: Vectors [Quiz]
- Concept 16: Vectors 2 [Quiz]
- Concept 17: Variables and Comparison Operators [Text]
- Concept 18: Variables & Comparison Operators [Graffiti]
- Concept 19: Comparison Commands Quiz
- Concept 20: Subsets & Indexing
- Concept 21: Reading Arrays Quiz
- Concept 22: Subset Commands Quiz
- Concept 23: Matrix Manipulation [Text]
- Concept 24: Matrix Manipulation [Graffiti]
- Concept 25: Manipulating Arrays Quiz
- Concept 26: Inner Product and Transpose Quiz
- Concept 27: Concatenation Quiz
- Concept 28: Concatenation Quiz 2
- Concept 29: Iris Dataset [Text]
- Concept 30: Iris Dataset [Graffiti]
- Concept 31: Dataset Quiz [Text]
- Concept 32: Datasets Quiz 1
- Concept 33: Datasets Quiz 2
- Concept 34: Recap
-
Lesson 03: Control Flow & Functions
Learn some of the foundational programming concepts in R syntax. These concepts include control flow, loops, and functions.
- Concept 01: What's Ahead
- Concept 02: If Else
- Concept 03: If/Else [Text]
- Concept 04: If/Else Statements [Graffiti]
- Concept 05: Loops [Text]
- Concept 06: Loops [Graffiti]
- Concept 07: Loops Quiz
- Concept 08: Functions
- Concept 09: Functions [Text]
- Concept 10: Functions Notebook [Graffiti]
- Concept 11: Passing And Creating Arguments [Text]
- Concept 12: Passing And Creating Arguments [Quiz]
- Concept 13: Functions Quiz
- Concept 14: Recap
-
Lesson 04: Data Visualizations & EDA
In this lesson, you will get hands on with creating plots in R. This is where using R really shines, as you build amazing visualizations with only a few lines of code.
- Concept 01: What is EDA?
- Concept 02: Pseudo-Facebook User Data
- Concept 03: Notebooks vs. RStudio
- Concept 04: Pseudo Facebook User Data Notebook
- Concept 05: Histogram of Users' Birthdays
- Concept 06: Histogram of Users' Birthdays Notebook
- Concept 07: Perceived Audience Size
- Concept 08: Faceting
- Concept 09: Faceting Notebook
- Concept 10: Moira's Outlier
- Concept 11: Friend Count
- Concept 12: Limiting the Axes
- Concept 13: Exploring with Bin Width
- Concept 14: Adjusting the Bin Width
- Concept 15: Omitting NA Observations
- Concept 16: Friends by Gender
- Concept 17: Statistics 'by' Gender
- Concept 18: Tenure
- Concept 19: Labeling Plots
- Concept 20: Statistics, Tenure, & Labeling
- Concept 21: Likes on the Web
- Concept 22: Box Plots
- Concept 23: Box Plots, Quartiles, and Friendships
- Concept 24: Box Plots Notebook
- Concept 25: Scatterplots and Perceived Audience Size
- Concept 26: Scatterplots
- Concept 27: ggplot Syntax
- Concept 28: Overplotting
- Concept 29: Overlaying Summaries with Raw Data
- Concept 30: Bivariate Plots
- Concept 31: Recap
-
Lesson 05: Explore Bikeshare Data
You will now use your R skills to explore bikeshare data and report your findings!
-
Part 04 : Command Line Essentials
-
Module 01: Command Line Essentials
-
Lesson 01: Shell Workshop
The Unix shell is a powerful tool for developers of all sorts. In this lesson, you'll get a quick introduction to the very basics of using it on your own computer.
- Concept 01: Introduction to Unix Shell
- Concept 02: Intro to the Shell
- Concept 03: Windows: Installing Git Bash
- Concept 04: Opening a terminal
- Concept 05: Your first command (echo)
- Concept 06: Navigating directories (ls, cd, ..)
- Concept 07: Current working directory (pwd)
- Concept 08: Parameters and options (ls -l)
- Concept 09: Organizing your files (mkdir, mv)
- Concept 10: Downloading (curl)
- Concept 11: Viewing files (cat, less)
- Concept 12: Removing things (rm, rmdir)
- Concept 13: Searching and pipes (grep, wc)
- Concept 14: Shell and environment variables
- Concept 15: Startup files (.bash_profile)
- Concept 16: Controlling the shell prompt ($PS1)
- Concept 17: Aliases
- Concept 18: Keep learning!
-
Part 05 : Git and Github
-
Module 01: Git and Github
-
Lesson 01: What is Version Control?
Version control is an incredibly important part of a professional programmer's life. In this lesson, you'll learn about the benefits of version control and install the version control tool Git!
-
Lesson 02: Create a Git Repo
Now that you've learned the benefits of Version Control and gotten Git installed, it's time you learn how to create a repository.
-
Lesson 03: Review A Repo's History
Knowing how to review an existing Git repository's history of commits is extremely important. You'll learn how to do just that in this lesson.
-
Lesson 04: Add Commits to A Repo
A repository is nothing without commits. In this lesson, you'll learn how to make commits, write descriptive commit messages, and verify the changes you're about to save to the repository.
-
Lesson 05: Tagging, Branching, and Merging
Being able to work on your project in isolation from other changes will multiply your productivity. You'll learn how to do this isolated development with Git's branches.
-
Lesson 06: Undoing Changes
Help! Disaster has struck! You don't have to worry, though, because your project is tracked in version control! You'll learn how to undo and modify changes that have been saved to the repository.
-
Lesson 07: Working With Remotes
You'll learn how to create remote repositories on GitHub and how to get and send changes to the remote repository.
-
Lesson 08: Working On Another Developer's Repository
In this lesson, you'll learn how to fork another developer's project. Collaborating with other developers can be a tricky process, so you'll learn how to contribute to a public project.
-
Lesson 09: Staying In Sync With A Remote Repository
You'll learn how to send suggested changes to another developer by using pull requests. You'll also learn how to use the powerful
git rebase
command to squash commits together. -
Lesson 10: Post your Work on GitHub
Use your local git repository and your GitHub repository. Fork a repository, work on files, stage files and commit them to GitHub. You will also demonstrate how to hide files using .gitignore files.
-
Part 06 : Career Services
These Career Services will ensure you make meaningful connections with industry professionals to accelerate your career growth - whether looking for a job or opportunities to collaborate with your peers. Unlike your Nanodegree projects, you do not need to meet specifications on these Services to progress in your program. Submit these Career Services once, and get honest, personalized feedback and next steps from Udacity Career Coaches!
-
Module 01: Career Services
-
Lesson 01: Industry Research
You're building your online presence. Now learn how to share your story, understand the tech landscape better, and meet industry professionals.
- Concept 01: Self-Reflection: Design Your Blueprint for Success
- Concept 02: Debrief: Self-Reflection Exercise Part 1
- Concept 03: Debrief: Self-Reflection Exercise Part 2
- Concept 04: Map Your Career Journey
- Concept 05: Debrief: Map Your Career Journey
- Concept 06: Conduct an Informational Interview
- Concept 07: How to Request an Informational Interview
- Concept 08: Ways to Connect
- Concept 09: Ask Good Questions
- Concept 10: Debrief: Sample Questions Quiz
- Concept 11: Keep the Conversation Going
-
Lesson 02: Take 30 Min to Improve your LinkedIn
Find your next job or connect with industry peers on LinkedIn. Ensure your profile attracts relevant leads that will grow your professional network.
- Concept 01: Get Opportunities with LinkedIn
- Concept 02: Use Your Story to Stand Out
- Concept 03: Why Use an Elevator Pitch
- Concept 04: Create Your Elevator Pitch
- Concept 05: Use Your Elevator Pitch on LinkedIn
- Concept 06: Create Your Profile With SEO In Mind
- Concept 07: Profile Essentials
- Concept 08: Work Experiences & Accomplishments
- Concept 09: Build and Strengthen Your Network
- Concept 10: Reaching Out on LinkedIn
- Concept 11: Boost Your Visibility
- Concept 12: Up Next
-
Lesson 03: Optimize Your GitHub Profile
Other professionals are collaborating on GitHub and growing their network. Submit your profile to ensure your profile is on par with leaders in your field.
- Concept 01: Prove Your Skills With GitHub
- Concept 02: Introduction
- Concept 03: GitHub profile important items
- Concept 04: Good GitHub repository
- Concept 05: Interview with Art - Part 1
- Concept 06: Identify fixes for example “bad” profile
- Concept 07: Quick Fixes #1
- Concept 08: Quick Fixes #2
- Concept 09: Writing READMEs with Walter
- Concept 10: Interview with Art - Part 2
- Concept 11: Commit messages best practices
- Concept 12: Reflect on your commit messages
- Concept 13: Participating in open source projects
- Concept 14: Interview with Art - Part 3
- Concept 15: Participating in open source projects 2
- Concept 16: Starring interesting repositories
- Concept 17: Next Steps
-