# Comprehensive Guide to Learning Python for Data Analysis and Data Science

Want to make a career change to Data Science using python? Well learning anything on your own can be a challenge & a little guidance could be a great help, that is exactly what this article will provide you with.

**Step 4: Get Data to Learn With. (Loading Data)**

The best way to learn and get comfortable with Python, or any other new programming language, is to take a sample dataset to work with, experiment, and try the new skills and techniques you pick up along the way.

The StatsModels library contains some preloaded datasets that you could use. Otherwise you can load a data set from the web or a csv file. To do so you can follow a sample code from available examples or forums like Stack overflow. Always have your dataset available and treat it as a toy that you can play with and learn from.

**Step 5: Manipulating Data**

One of the most hands-on skills of working with data is data manipulation. Data doesn’t always come clean and analysis-ready. In order to be able to analyse data, we often need data that is manipulated through transformations, formatting, cleaning, etc. Pandas and Numpy are the go to tools for that in Python, so start learning how to use them with your sample dataset.

- Get started with a short introduction: 10 Minutes to Pandas
- Follow an introductory tutorial: Pandas Notebook Lesson
- Go back to the DataCamp courses and re-apply what you learned to your toy dataset: DataCamp Python for Data Science

**Step 6: Visualizing Data**

Another essential skill in data analysis is data . Visuals are extremely important for both exploratory data analysis, as well the communication of your results. Matplotlib is the most commonly used library for this in Python.

- Get inspired by viewing some plots and graphs: Matplotlib Gallery
- Take a look at some sample code: Matplotlib Examples
- Review the Matplotlib chapter on DataCamp: DataCamp Python for Data Science
- Come up with some visualizations for your toy dataset.

**Step 7: Data Analytics**

Of course analyzing data is not just about formatting and making plots and graphs. The analytics begins with statistical modeling, machine learning algorithms, data mining techniques, inferences and so on. Python is a fantastic tool for analyzing data because it has libraries such as Scikit-learn and StatsModels which contain the implementations of the models and algorithms that you might need for your analysis. Of course, as Python is a general purpose programming language, you are also free to program your own methods when you become an advanced user, though make sure you are not replicating what already exists.

- Begin by considering a familiar technique that you will be able to follow (e.g.. Linear Regression, K-nearest neighbors, Time Series) and find an example of implementation in Python.
- Try performing a simple analysis on your toy dataset.
- You can look at examples of Scikit-learn and StatsModels methods that you might not know, just to appreciate the possibilities.

**Step 8: Reporting**

Communicating your analysis is a key soft skill in data science. Of course, communication begins with good use of language and style. However, an equally important aspect of communicating your analysis is preparing legible reports. Luckily you have a handy tool for that in the form of the previously mentioned Jupyter Notebooks (see step 1).

While you can use the Jupyter Notebooks as a place to code and do your analysis, you can also imbed text, formatted formulas, even images and video if you like. What’s more, you have to options of exporting your code in various formats that include PDFs, HTML, and Markdown.

- Gain a better familiarity with Jupyter through a tutorial: Jupyter Notebooks Getting Started
- If you are familiar with LaTeX learn how to use it with Jupyter: LaTeX in iPython Notebooks
- If you are not familiar with LaTeX but and you want to use mathematical notation in your reports, read about it: LaTeX for Mathematics Wiki
- Read some high-quality reports: Data Science Projects from Berkeley

**Step 9: Mastering Python**

After learning the basics of Python and exploring the main tools and libraries with your sample dataset, you should proceed to taking some courses either for Python, or courses taught with Python to begin mastering the language. Apparently, after 10,000 hours you can become an expert in anything, so don’t wait and get started! Some online course and sources for projects we would recommend include:

- Data Management and Processing: Python for Everybody by University of Michigan
- Data Analysis: Data Analysis and Interpretation Specialization
- Data Science Fundamentals: Intro to Data Science on Udacity
- Kaggle Competitions
- DrivenData.org Competitions

**Related**: