13
$\begingroup$

First of all this term sounds so obscure.

Anyways..I am a software programmer. One of the languages I can code is Python. Speaking of Data I can use SQL and can do Data Scraping. What I figured out so far after reading soo many articles that Data Science is all about good at:

1- Stats

2- Algebra

3- Data Analysis

4- Visualisation.

5- Machine Learning.

What I know so far:

1- Python Programming 2- Data scrapping in Python

Can you experts guide me or suggest a roadmap to brush up both theory and practical? I have given around 8 months of time frame to myself.

$\endgroup$
5
  • $\begingroup$ Please be specific about what you want to "get into". Not only the field, but also at what level. For example-- "professional medical text miner" or "amateur astrophysical universe examiner" $\endgroup$
    – Pete
    Commented Jul 28, 2015 at 22:01
  • $\begingroup$ I am willing to become something that could work as a consultant or an employee that could be contact for companies to dug into their data and get insights of it. $\endgroup$
    – Volatil3
    Commented Jul 29, 2015 at 4:26
  • $\begingroup$ (1) Andrew's Ng course on Machine Learning; (2) Yaser Abu-Mostafa course on Learning from the Data; Both are accessible (time is not included) and will get you good level of understanding. $\endgroup$ Commented Dec 23, 2015 at 1:01
  • $\begingroup$ Check out my most recent question $\endgroup$
    – xyhhx
    Commented Dec 23, 2015 at 20:02
  • $\begingroup$ The term Data Science is very broad. Maybe you could think about what kind of jobs you would like, and in which company you want to work with, see their requirements and responsibilities. Then you would know if the job meets your expectation and the gap of your capability. Here is a requirements of data scientist in GOOGLE. ![Data Scientist Requirements from Google](i.sstatic.net/5KSN6.png) $\endgroup$
    – Octoparse
    Commented Aug 30, 2018 at 8:19

8 Answers 8

19
$\begingroup$

Focus less on gaining skills and more on gaining experience. Try to actually solve some problems and post your work on github. You'll learn more in the process and be able to demonstrate knowledge and experience to employers, which is much more valuable than having a supposedly deep understanding of a topic or theory.

Data Science is a pretty loaded field these days so I'm not sure what kind of work you specifically want to do, but assuming that machine learning is a component of it then kaggle.com is a good place to start. In terms of goals, if you're able to work with the data in pandas/numpy/scipy, build models in sci-kit learn and make some pretty graphs in seaborn, ggplot or even matplotlib then you won't have a problem getting a job from a skills perspective -- especially if you have code samples and examples to demonstrate your abilities. If you get stuck then stackexchange will either have the answer or you can post a questions and you'll have an answer shortly. Once you're doing the work for a living then you'll learn even more, likely from a senior team member who mentors you.

Best of luck.

$\endgroup$
7
$\begingroup$

I do like Berkeley course on Data Science, will give a good foundation and taste for Data Science, After moved to udacity and coursera and many more resources. So if you have Programming skills than will need math and stat and a lot of visualization. Also will be great to get used to IPython because is essential to see every step(visualize)how it perform instead writing a whole script and test after (anaconda is easy to install and work with). Course is listed bellow: bcourses.berkeley.edu/courses/1267848/wiki also the stat i find good free course from SAS: Statistics 1: Introduction to ANOVA, Regression, and Logistic Regression support.sas.com/edu/schedules.html?ctry=us&id=1979

Starting with ML will recommend: www.kaggle.com/c/titanic/details/getting-started-with-python

on left side is also for Excel using Pivot tables and R. DataCamp has released the tutorial on how to use R. Once you complete this steps than more competitions in gaining experience are on kaggle (recently released one for San Francisco Crime Classification) and ultimately amazing video tutorials from www.dataschool.io

hope it helps ...

$\endgroup$
6
  • $\begingroup$ Thanks for your answer. How did you learn? $\endgroup$
    – Volatil3
    Commented Jul 25, 2015 at 7:19
  • 2
    $\begingroup$ Books, tutorials online and a lot of hands on code related to play with data. Try the kaggle.com and try thru competitions. Is great in starting to learn ML. $\endgroup$
    – n1tk
    Commented Jul 25, 2015 at 7:30
  • $\begingroup$ and ultimately try to find a community of data scientists and participate in the projects, you will gain so much experience shared in the projects what no books can teach. $\endgroup$
    – n1tk
    Commented Jul 25, 2015 at 7:42
  • $\begingroup$ But I am not good at theory like stats, Maths etc. I did study them in Uni days $\endgroup$
    – Volatil3
    Commented Jul 25, 2015 at 10:28
  • $\begingroup$ I'n my particular case I did considered returning back to school and move to Ph.D program in Analytics and Data Science ... requiring calculus 1,2, Linear algebra, numerical linear algebra, SAS, R, math for big data, graph theory and much more ... $\endgroup$
    – n1tk
    Commented Jul 25, 2015 at 15:17
5
$\begingroup$

Disagree with David, a true data scientist is an applied statistician who codes and knows how to use machine learning algorithms for the right reasons. Statistics is the base of all data science. It is the "cake" per se. Everything else is just icing.

The question is what kind of data scientist do you want to be? Do you want to be a master of the subject (knowledge of how, why, when and when not to apply an algorithm or technique) or a Kaggle Script Kiddie using Scipy and thinking that he is a Data Scientist?

1 - Stats

2- Everything else

$\endgroup$
11
  • 2
    $\begingroup$ Not sure I understand what you're saying. I never said that knowing "applied statistics" isn't important - I simply made the distinction that gaining experience applying methods is more important than gaining theoretical knowledge about the methods itself. $\endgroup$
    – David
    Commented Aug 4, 2015 at 16:57
  • 1
    $\begingroup$ David, that was exactly my point of disagreement. Without having theoretical knowledge of the methods themselves we are simply just script kiddies. Experience is important, but it is a by-product of theoretical knowledge, not the other way around. $\endgroup$ Commented Aug 4, 2015 at 18:31
  • 2
    $\begingroup$ No, it isn't. There is a vast difference between applied experience and theoretical knowledge, it is frequently the difference between what is gained in industry vs in the classroom. For example, it's more valuable to know how to effectively verify that a model has not overfit using an applied method like cross validation than it is to know the theoretical underpinnings of regularization. Also, please stop mentioning "script kidies" -- no one is advocating using kaggle's new and horrible one-click-to-submit functionality. $\endgroup$
    – David
    Commented Aug 4, 2015 at 18:47
  • 1
    $\begingroup$ If what you are saying is true, then why do companies prefer PhD's and people with Masters degrees over people with simply Bachelors? It is because they have theoretical knowledge of the techniques which drive the algorithms. They are the engine builders per se. Theoretical knowledge is deeper knowledge. Kaggle is a holding tank for script kiddies. $\endgroup$ Commented Aug 4, 2015 at 18:53
  • 1
    $\begingroup$ While I can see points both of you are trying to make, I think it's perhaps out of context. The original question was 'how can a programmer transition into a job in data science ?' If the response is 'drop everything, spend some years getting a PH.D in statistics, then do some projects on your own and then start applying', that's a pretty onerous obstacle and you may as well tell them not to bother in a practical sense. Conversely, given the number of Stats PHD (or even Masters) and the number of people looking, employers may consider people who can demonstrate experience without a degree. $\endgroup$
    – chrisfs
    Commented Aug 8, 2015 at 7:49
4
$\begingroup$

If you want to be a practical person with true knowledge, start with math(calculus, probability + stat, linear algebra). On every step try to implement everything with programing, python is nice for this. When u get good ground, play with real data and solve for problems

Courses. Linear algebra - edx Laff or coding the matrix Stat - edx stat 2x Barkley Calculus - read...its simple

$\endgroup$
2
$\begingroup$

David has a good point , I would suggest you focus on whatever it is that drives your interest more. It's the only way to succeed in every kind of effort. If you want to build something cool start with it. If you want to read a book thats good too. The starting point doesn't matter. A few days ahead you will have a better understanding on what you want and should do next.

$\endgroup$
1
$\begingroup$

Data Science is so broad, there's many different paths to get into it. It is usually split into 4 or 5 different types for example:

enter image description here

You could see from the other posts in this topic people coming from an Applied Statistics background (applying the right algorithm), Programming background (participating in Kaggle), and others applying it to a business background

Savvy companies could refer to a programming skewed person as a "Data Engineer". Big companies also use each type for their data science team, so demonstrating good T-shaped skills would be a good thing.

$\endgroup$
0
0
$\begingroup$

If you are a programmer, you could start with a Decision Tree classifier, focus on understanding the math behind Entropy and Information-Gain. It is essential to understand that ML is just all about data compression.

I'd highly disagree with some of the other answers on the value of practical courses. Most valuable for ML is math: number theory, linear algebra and probability theory.

If you don't focus on math, the only thing that you will learn is, how to use some library for doing magic, that's not machine learning and not science at all.

$\endgroup$
0
$\begingroup$

Basic courses like Andrew ng Machine Learning on Coursera or the Introduction to Statistical Learning (free) book would be my recommandations for a first step in Data Science / Machine Learning. They both cover basic statistical concepts and main modelling traps and are enough to start your first projects.

Then I would suggest you to find a domain of application, learn about it and put your knowledge into work. Depending on what you want to achieve you will have plenty of occasions to dive into specific fields if needed (a given library, advanced statistics, domain oriented tools like for NLP or computer vision...).

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.