In One Minute : Pandas
Tags: pandas, python, beginners, oneminute
Published: 2022-11-05 10:30:00

[Pandas](https://pandas.pydata.org/) is a [Python](https://www.python.org/) library for PANel DAta manipulation and analysis, example: multidimensional time series and cross-sectional data sets commonly found in statistics, experimental science results, econometrics, or finance. 
Pandas is implemented primarily using [NumPy](https://www.numpy.org/) and [Cython](https://cython.org/); it is intended to be able to integrate very easily with NumPy-based scientific libraries, such as [statsmodels](https://www.statsmodels.org/).

Pandas is one of the main data science libraries in Python.

Pandas allows importing data from various file formats such as comma-separated values, JSON, Parquet, SQL database tables or queries, and Microsoft Excel.
Pandas allows various data manipulation operations such as merging, reshaping, selecting, as well as data cleaning, and data wrangling features.

{% embed https://youtu.be/y4PTE4_agI0 %}

## Main Features:

- Data structures: for one- and two-dimensional labeled datasets (respectively [Series](https://pandas.pydata.org/pandas-docs/stable/user_guide/dsintro.html#series) and [DataFrames](https://pandas.pydata.org/pandas-docs/stable/user_guide/dsintro.html#dataframe)). Some of their main features include:

> 1. Automatically aligning data and interpolation
> 2. Handling missing observations in calculations
> 3. Convenient slicing and reshaping ("reindexing") functions
> 4. [Categorical data](https://pandas.pydata.org/pandas-docs/stable/user_guide/categorical.html) types
> 5. Provide 'group by' aggregation or transformation functionality
> 6. Tools for merging and joining together data sets
> 7. Simple [Matplotlib](https://matplotlib.org/) integration for plotting and graphing
> 8. [Multi-Indexing](https://pandas.pydata.org/pandas-docs/stable/user_guide/advanced.html) providing structure to indices that allow for representation of an arbitrary number of dimensions.


- Date tools: objects for expressing date offsets or generating date ranges. Dates can be aligned to a specific time zone and converted or compared at will
- Statistical models: convenient ordinary least squares and panel [OLS](https://en.wikipedia.org/wiki/Ordinary_least_squares) implementations for in-sample or rolling time series and cross-sectional regressions. These will hopefully be the starting point for implementing models
- Intelligent Cython offloading; complex computations are performed rapidly due to these optimizations.
- Static and moving statistical tools: mean, standard deviation, correlation, and covariance
- [Rich User Documentation](https://pandas.pydata.org/pandas-docs/stable), using [Sphinx](https://www.sphinx-doc.org/)

## Resources and Tutorials:

- [10 Minutes to pandas](https://pandas.pydata.org/pandas-docs/stable/user_guide/10min.html)
- [Documentation](https://pandas.pydata.org/pandas-docs/stable)
- [GitHub](https://github.com/pandas-dev/pandas)
- [Homepage](https://pandas.pydata.org/)
- [Pandas Cookbook](https://tutswiki.com/pandas-cookbook/chapter1)
- [Real Python: Pandas](https://realpython.com/search?q=pandas)


## Books:

- [Python for Data Analysis](https://shop.oreilly.com/product/0636920023784.do)
- [Mastering pandas for Finance](https://rads.stackoverflow.com/amzn/click/com/1783985100)
- [Python Cookbook, 3rd edition](https://shop.oreilly.com/product/0636920027072.do)
- [Python 3 Object-Oriented Programming](https://www.packtpub.com/application-development/python-3-object-oriented-programming)
- [Effective Python: 59 Specific Ways to Write Better Python](https://effectivepython.com/)