pandas (software)
In computer programming, pandas is a software library written for the Python programming language for data manipulation and analysis. In particular, it offers data structures and operations for manipulating numerical tables and time series. It is free software released under the three-clause BSD license.[2] The name is derived from the term "panel data", an econometrics term for data sets that include observations over multiple time periods for the same individuals.[3]
Original author(s) | Wes McKinney |
---|---|
Developer(s) | Community |
Initial release | 11 January 2008 |
Stable release | 1.1.0[1]
/ 28 July 2020 |
Repository | |
Written in | Python, Cython, C |
Operating system | Cross-platform |
Type | Technical computing |
License | New BSD License |
Website | pandas |
Library features
- DataFrame object for data manipulation with integrated indexing.
- Tools for reading and writing data between in-memory data structures and different file formats.
- Data alignment and integrated handling of missing data.
- Reshaping and pivoting of data sets.
- Label-based slicing, fancy indexing, and subsetting of large data sets.
- Data structure column insertion and deletion.
- Group by engine allowing split-apply-combine operations on data sets.
- Data set merging and joining.
- Hierarchical axis indexing to work with high-dimensional data in a lower-dimensional data structure.
- Time series-functionality: Date range generation[4] and frequency conversion, moving window statistics, moving window linear regressions, date shifting and lagging.
- Provides data filtration.
The library is highly optimized for performance, with critical code paths written in Cython or C.[5]
Dataframes
Pandas is mainly used for data analysis. Pandas allows importing data from various file formats such as comma-separated values, JSON, SQL, Microsoft Excel[6]. Pandas allows various data manipulation operations such as merging [7], reshaping[8], selecting[9], as well as data cleaning, and data wrangling features.
History
Developer Wes McKinney started working on pandas in 2008 while at AQR Capital Management out of the need for a high performance, flexible tool to perform quantitative analysis on financial data. Before leaving AQR he was able to convince management to allow him to open source the library.
Another AQR employee, Chang She, joined the effort in 2012 as the second major contributor to the library.
In 2015, pandas signed on as a fiscally sponsored project of NumFOCUS, a 501(c)(3) nonprofit charity in the United States.[10]
See also
- matplotlib
- NumPy
- SciPy
- R (programming language)
- Scikit-learn
- statsmodels
- List of numerical analysis software
References
- "What's new in 1.1.0". pandas. 28 July 2020. Retrieved 28 July 2020.
- "License – Package overview – pandas 1.0.0 documentation". pandas. 28 January 2020. Retrieved 30 January 2020.
- Wes McKinney (2011). "pandas: a Foundational Python Library for Data Analysis and Statistics" (PDF). Retrieved 2 August 2018.
- "pandas.date_range – pandas 1.0.0 documentation". pandas. 29 January 2020. Retrieved 30 January 2020.
- "Python Data Analysis Library – pandas: Python Data Analysis Library". pandas. Retrieved 13 November 2017.
- https://pandas.pydata.org/pandas-docs/stable/user_guide/io.html
- https://pandas.pydata.org/pandas-docs/stable/user_guide/merging.html
- https://pandas.pydata.org/pandas-docs/stable/user_guide/reshaping.html
- https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html
- "NumFOCUS – pandas: a fiscally sponsored project". NumFOCUS. Retrieved 3 April 2018.
Further reading
- Chen, Daniel Y. (2018). Pandas for Everyone : Python Data Analysis. Boston: Addison-Wesley. ISBN 978-0-13-454693-3.
- McKinney, Wes (2017). Python for Data Analysis : Data Wrangling with Pandas, NumPy, and IPython (2nd ed.). Sebastopol: O'Reilly. ISBN 978-1-4919-5766-0.
- VanderPlas, Jake (2016). "Data Manipulations with Pandas". Python Data Science Handbook: Essential Tools for Working with Data. O'Reilly. pp. 97–216. ISBN 978-1-4919-1205-8.
- Pathak, Chankey (2018). "Pandas Cookbook". Pandas Cookbook. pp. 1–8.