.. SPDX-FileCopyrightText: 2022 cusy GmbH
..
.. SPDX-License-Identifier: BSD-3-Clause
pandas
======
`pandas `_ is a Python library for data analysis
that has become very popular in recent years. On the website, pandas is
described thus:
„pandas is a fast, powerful, flexible and easy to use open source data
analysis and manipulation tool, built on top of the Python programming
language.“
More specifically, pandas is an in-memory analysis tool that offers SQL-like
constructs, as well as statistical and analytical tools. In doing so, pandas
builds on Cython and NumPy, making it less memory intensive and faster than pure
Python code. Mostly pandas is used to
* replace :doc:`/data-processing/serialisation-formats/excel` and `Power BI
`_
* implement an `ETL `_
process
* process :doc:`/data-processing/serialisation-formats/csv/index` or
:doc:`/data-processing/serialisation-formats/json/index` data
* prepare machine learning
.. tip::
`Analysing data with pandas
`_
.. seealso::
* `Home
`_
* `User guide
`_
* `API reference
`_
* `GitHub
`_
pandas vs. Polars vs. Dask and DuckDB
-------------------------------------
The choice between pandas, `Polars `_,
:doc:`/performance/dask`, and `DuckDB `_ depends on the type
of workload:
pandas
is the canonical Python DataFrame library for analysis on a single machine.
Polars
is written in Rust and allows for powerful analysis on a single node or when
`lazy evaluation `_ and
`expressions API
`_
are important.
Dask
is a Python library for parallel computing that scales familiar APIs,
including pandas and `Scikit-Learn `_, to
clusters.
DuckDB
is an in-process `OLAP
`_ database for
analysis and SQL over **local** files, which often complements pandas
DataFrames as it is excellent for in-process analysis and SQL tasks.
.. toctree::
:hidden:
:titlesonly:
:maxdepth: 0
data-structures.ipynb
python-data-structures.ipynb
indexing.ipynb
date-time.ipynb
select-filter.ipynb
transforming.ipynb
string-manipulation.ipynb
arithmetic.ipynb
descriptive-statistics.ipynb
sorting-ranking.ipynb
discretisation.ipynb
combining-merging.ipynb
group-operations.ipynb
aggregation.ipynb
apply.ipynb
pivoting-crosstab.ipynb
convert-dtypes.ipynb