You want to get into data science but don't want to shell out lots of money for expensive courses,
then you've come to the right place. Today I'll talk exclusively about the best free
online resources to learn data science. I'll cover resources across four categories: coding tools,
python, statistics and maths for machine learning, and finally machine learning algorithms. This is
a bottom-up approach to learning data science. Let's talk about coding tools. There's a very good
reason why i'm covering this before I get to any machine learning stuff. As a data scientist you'll
spend a majority of your day on the computer in the terminal. More often not you'll need a good
grasp of basic coding practices like using git command line, debugging and profiling your code,
shell scripting and basic data wrangling. A few months ago I found an amazing online course called
the missing semester by MIT. This is a free online course that aims to teach students everything they
should have learned in their computer science degrees. This course teaches you the most
practical skills that you're guaranteed to use daily as a data science practitioner. I know all
too many data scientists that initially struggle a lot with basic coding tools despite knowing the
latest about machine learning algorithms. Next up is Python. Python is the most commonly used
programming language by data scientists. It's used for data wrangling, data cleaning,
data exploration, analysis and implementing machine learning algorithms. You should approach
learning python in 3 steps. The first step is to learn python syntax which will expose
you to coding if you've never done it before and teach you the basics of the language as if you're
learning nouns, verbs and how to create sentences as though you were learning to speak english or
any other language. A great place to get started is the Python website, they've kindly curated a
whole list of great beginner tutorials for python and if you prefer to learn more interactively with
do it yourself exercises, I would recommend learnpython.org. They not only cover all the
basics of the language but also Numpy and pandas packages that are basically the bread and butter
of the data science world. The second step is to learn problem solving using python. HackerRank and
Leetcode are excellent platforms to start solving toy problems. They'll expose you to a wide array
of coding problems and get you thinking in an application focused manner because at the end of
the day what good is learning python syntax if you can't use it to solve problems. The final step in
learning python is to create your own pet project and you can easily get started simply by googling
pet projects for python. A while ago one of my pet projects using python was to create a home
loan repayment calculator and visualizer but you can pick any problem that you're passionate about.
Some examples of a pet project include building a weather app, a snakes and ladders game or an
interactive dashboard displaying your personal finances. Now that you know how to learn python,
let's talk about statistics. The best place to get started is Khan Academy. This course about
statistics and probabilities will teach you everything you need to know about
data distributions, confidence intervals, hypothesis testing, regression and many more
basics. I can't recommend it highly enough as I often use it to refresh my stats knowledge. Moving
on to maths for machine learning. One of the best courses I've found is the machine learning
specialization on Coursera. It's divided up into three specializations. The first being linear
algebra, the second being multivariate calculus and the third being principal component analysis.
I'd highly recommend the first two and you can get to the third one when you move on to learning
more about machine learning algorithms. Finally let's talk about machine learning algorithms.
I've previously recommended the Stanford course for machine learning on Coursera
and I still think this is one of the best places to get started but recently I noticed that Kaggle
has a good range of intro courses in ML I would also recommend you to try those out
and then following that you can start competing in Kaggle competitions just for the sake of
learning because I found Kaggle to have a great collaborative atmosphere where users are more than
happy to share their solutions to a given problems for the sake of learning. And if you're interested
in learning more about deep learning a subset of machine learning that's getting a lot of attention
in the media, I can't recommend this book highly enough. This is the absolute bible for learning
more about deep learning. Recently I've also been going through this book which is Hands-on machine
learning with Scikit-Learn and Tensorflow which is an awesome applications focus book that wraps up
this video. If you enjoyed the video don't forget to like and subscribe and I'll see you next time.