# Why is Python Preferred for Data Science, Machine Learning & Deep Learning?

Python for Data Science is easy to use, powerful, and flexible, making it an excellent choice for beginners and experts it’s identity and simple to utilize syntax. It is the most well-known language in the field of computer science. Those who don’t have engineering and science background can also learn within a short time.

As compared to other programming languages like Java and R, Python has proved itself as a highly scalable and faster language. It also provides great functionality to deal with mathematics, statistics, and scientific function

Python also provides a massive database of libraries for Data Science, Machine learning, and artificial intelligence.

**What are libraries **

The library is a collection of non-volatile resources used by computer programs, often for software development. These may include configuration data, documentation, help data, message templates, pre-written code and subroutines, classes, values, or type specifications.

**Important Libraries for Data Science, Machine Learning & Deep Learning**

These are the fundamental and most well-known Python libraries for Data Science, Machine learning & Deep Learning

**Data wrangling and Data manipulation libraries**

Data wrangling and data manipulation involve processing the data in various formats like merging, grouping, concatenating, etc. to analyze or get them ready to be used with another set of data. Python has built-in features to apply these wrangling methods to various data sets

**Numpy**

Numpy is a Python library that provides the mathematical function to handle large dimension array. It provides various methods/functions for Array, Metrics, and linear algebra. NumPy stands for Numerical Python. It provides lots of useful features for operations on n-arrays and matrices in Python. The library provides vectorization of mathematical operations on the NumPy array type, which enhances performance and speeds up the execution. It’s very easy to work with large multidimensional arrays and matrices using NumPy.

**Pandas**

Pandas is one of the most popular Python libraries for data manipulation and analysis. Pandas provide useful functions to manipulate a large amount of structured data. It provides large data structures and manipulating numerical tables and time-series data. Pandas is designed for quick and easy data manipulation, aggregation, and visualization. The following are the two data structures in Pandas

Series – It handles and stores data in one-dimensional data.

DataFrame – It handles and stores two-dimensional data.

**Data Visualisation libraries**

Data visualization is the graphic representation of data. It involves producing images that communicate relationships among the represented data to viewers of the images

**Matplotlib**

Matplolib is another useful Python library for Data Visualization. Descriptive analysis and visualizing data is very important for any organization. Matplotlib provides various methods to visualize data more effectively. Matplotlib allows us to quickly make line graphs, pie charts, histograms, and other professional-grade figures. Using Matplotlib, one can customize every aspect of a figure. Matplotlib has interactive features like zooming and planning and saving the Graph in graphics format.

**Seaborn**

Seaborn is a library for making statistical graphics in Python. It is built on top of matplotlib and closely integrated with pandas data structures.

It is specialized with support for using categorical variables to show observations or aggregate statistics. Seaborn can also do automatic estimation and plotting of linear regression models for different kinds of dependent variables.

**Bokeh**

Bokeh is a Python library for interactive visualization that targets web browsers for representation. This is the core difference between Bokeh and other visualization libraries. Bokeh can produce elegant and interactive visualization like with high-performance interactivity over very large or streaming datasets. Bokeh can help anyone who would like to quickly and easily create interactive plots, dashboards, and data applications.

**Plotly**

The Plotly Python library is an interactive, open-source plotting library that supports over 40 unique chart types covering a wide range of statistical, financial, geographic, scientific, and 3-dimensional use-cases.

**Machine learning & Deep Learning libraries **

Machine learning is largely based upon mathematics. Specifically, mathematical optimization, statistics, and probability. Python for Data Science libraries help researchers and mathematicians who are less equipped with developer knowledge to easily do machine learning easily

**Tensorflow**

TensorFlow is an end-to-end open-source platform for machine learning. It has a comprehensive, flexible ecosystem of tools, libraries and community resources that lets researchers push the state of the art in ML and developers easily build and deploy ML-powered applications

**Keras**

Keras is an open-source neural network library written in Python. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, R, Theano, or PlaidML. Designed to enable fast experimentation with deep neural networks, it focuses on being user-friendly, modular, and extensible

**PyTorch**

PyTorch is a Python-based scientific computing package that uses the power of graphics processing units. It is also one of the preferred deep learning research platforms built to provide maximum flexibility and speed. It is known for providing two of the most high-level features; namely, tensor computations with strong GPU acceleration support and building deep neural networks on tape-based auto-grad systems.

**NLTK**

NLTK is a leading platform for building Python programs to work with human language data. It provides easy-to-use interfaces to over 50 corpora and lexical resources such as WordNet, along with a suite of text processing libraries for classification, tokenization, stemming, tagging, parsing, and semantic reasoning,

**Scikit-learn**

Scikit-learn is a free machine learning library for Python. It features various algorithms like support vector machine, random forests, and k-neighbors, and it also supports Python numerical and scientific libraries like Numpy and Scipy

**How to import a library module before using it.**

To make use of the functions in a module, you’ll need to import the module with an import statement. An import statement is made up of the import keyword along with the name of the module. In a Python file, this will be declared at the top of the code

Use **import..**to load a library module into a program’s memory.

**import pandas**

**Create an alias for a library module when importing it to shorten programs.**

Use **import..as..**to give a library a short *alias* while importing it.

*import pandas as pd**Import specific items from a library module to shorten programs*

Use **from..import..** to load only specific items from a library module. **from sklearn.preprocessing import imputer**

This is how you use libraries

That’s all about some of the most popular Python libraries for Data Science, Machine Learning, and Artificial Intelligence. Depending upon what exactly you are doing with machine learning and data science, you can choose these libraries to help you out.