You might think this is yet another post about free resources for Python. In one sense, yes it is. But really, it is not.
It is the year 2020, and there are still post on blogs and Linkedin encouraging people to learn Python. Gone are the days of Excel Data Analysts. Watching youtube videos and reading blog posts, this overall trend may very well be true, but we are far from living in a time where all Data Analysts (and BI Analysts) know how to code. Many have progressed to using PowerBI or Tableau on top of Excel, but still, have much reluctance to learn to code.
Many others have written about why Data Analysts should learn to program/code, and I do not have much to add there. But I will quickly mention three barriers that people face:
- I'm not a mathematics/programming/technical person.
- I don't have the time.
- The degrees/courses seem expensive.
As an ex-teacher, I hate the first statement. These skills are not beyond the reach of anybody. It is merely up to your motivation and mindset. And if you are not up for getting "technical" then perhaps get a different job.
The second excuse is more realistic, and I don't think I can help much, other than to say that 5 hours per week for a couple of years can take you a long way. As professionals, we should always strive to learn and improve.
Cost. Now, this is where this post can really help you. Whether you are a student wanting to learn data science, a BI Analyst wanting to learn Python, or a corporate person (finance, HR, marketing, etc.) wanting to use analytics in your job, these courses will help you get started for free.
I have taken many (paid) courses from edX, Coursera, Udacity, DataCamp, Udemy, and a degree from a University. They all have their strengths and weaknesses, styles and emphases. I'll make a separate post about my thoughts on those perhaps, but for now, let me introduce their (surprisingly less known) free counterparts.
Firstly, while edX and Coursera are great, their "free" version did not turn out to be completely free. Last time I checked, the free auditing came with a time limit, usually a few weeks before you lose the free access. Secondly, university degrees are (to my knowledge) not free, nor is Udemy. Lastly, while Udemy can be cheap when their discounts are on, even at the low cost, I wouldn't recommend Udemy for data-science-related courses - despite most other posts listing Udemy and Coursera as their top two choices.
That leaves DataCamp and Udacity. What surprised me is that many people did not seem to know that they offer free courses and tutorials. I am also adding the Kaggle courses (again, surprisingly lesser-known) to the list.
If you go to https://www.udacity.com/courses/all, you will see the entire list of Udacity's courses. You can then filter to see only the Free Courses. My top picks for beginners are:
Kaggle is not just the data science competition grounds it once was. Kaggle not only provides free online compute environment, it also has several courses offered for free. The Udacity free courses are more video based, while the Kaggle courses will be entirely notebook based. The Kaggle courses will complement the Udacity courses nicely.
Learn Python Tutorials | Kaggle
Learn Pandas Tutorials | Kaggle
Learn Data Visualization Tutorials | Kaggle
Learn Intro to SQL Tutorials | Kaggle
Learn Advanced SQL Tutorials | Kaggle
Learn Intro to Machine Learning Tutorials | Kaggle
Learn Intermediate Machine Learning Tutorials | Kaggle
DataCamp is very affordable and very comprehensive in its library of courses, covering spreadsheets, SQL, Tableau, R, Scala, Python, and probably growing. But, if you want to access their free content beyond just the first parts of their paid courses, they do have a blog-like community-created tutorial content as well. These are not created by DataCamp, and their qualities may vary, but some of the great ones are kindly tagged as "must read". These tutorials can be a great supplement to other courses. Here are my picks:
Essentials of Linear Regression in Python | DataCamp
KNN Classification using Scikit-learn | DataCamp
K-Means Clustering with scikit-learn | DataCamp
(Tutorial) Principal Component Analysis (PCA) in Python | DataCamp
As you can see, there are plenty of free resources available from very reputable training providers. You can go a very long way with these free courses alone, but I would recommend that once you are done testing the waters out, then go for the paid courses from a combination of education providers:
Depending on your interests, there are a plethora of resources available on Youtube as well (although, you would need to be able to sift through what is good and what is not). Some very popular Youtubers turned out to be plaigerisers, and some others, whilst pretty good, write code in a style that I would not want to collaborate with. Don't get me wrong, there are some that are great, it is just that you would already have to have a sense of what is a "better" code to decide which videos are high quality. Having said that, there are really great "theory-explaning" videos on Youtube that cannot be found elsewhere. So my advice would be: don't try to learn SQL, R, and Python using Youtube, but use Youtube to look up some theories you want to get a quick understanding of. I've prepared a playlist for machine learning if you are interested.