We’ve Reached a Milestone: pandas 1.0 Is Here

 

Today the pandas project announced the release of pandas 1.0.0.

For more on what’s changed, read through the extensive release notes. We’re particularly excited about Numba-accelerated window operations and the new nullable boolean and string data types. This post will focus on how Anaconda helped pandas get to 1.0.

Anaconda is proud to have been one of pandas’ longest-running Institutional Partners by employing pandas maintainers to spend some or all of their time working on pandas. Pandas is a large project that’s central to Python’s growth in popularity. Managing that project, with an emphasis on community involvement, is a mammoth task that would be difficult to achieve by volunteers alone. Having maintainers who can reliably dedicate blocks of time to maintenance and larger tasks ensured pandas health over the years.

Beyond just paying people to work on pandas (and other open source projects), Anaconda connects its customers, who have demanding and novel use cases, with the pandas developers. One of the challenges of developing an open-source library is knowing who’s actually using it and how it’s being used. There are institutions who can’t or won’t announce that they’re using pandas on a public mailing list, but have interesting challenges. As a leader in this space Anaconda has existing relationships with many groups and is able to make connections where appropriate.

One of these connections led to what’s probably the biggest theme in pandas development over the last couple years: the introduction of extension data types. This started out as a simple observation from an Anaconda customer: they found working with a particular type of data, which NumPy doesn’t natively support, slow and error-prone. Pandas already had some ad-hoc mechanisms for extending NumPy’s type system, so they wondered if pandas could add a new extension for this type of data. 

The pandas development team deemed the use case a bit too niche for inclusion in pandas itself, but were happy to support it by defining the extension interface: a way for 3rd party libraries to implement their own custom data types. By connecting a customer with a real-world use case to the pandas development team, and by funding pandas developers to work on it, Anaconda helped solve some of the longest-standing issues in pandas. This work led directly to the new nullable integer, boolean, and string data types.

For more on what pandas 1.0 means to the pandas development team, see the 1.0 announcement on the pandas blog.

Pandas 1.0 is available now, and can be installed via Anaconda with the simple command conda install pandas.


You May Also Like

For Practitioners
What’s in a Name? Clarifying the Anaconda Metapackage
The name “Anaconda” is overloaded in many ways. There’s our company, Anaconda, Inc., the Anaconda Distribution, the anaconda metapackage, Anaconda Enterprise, and severa...
Read More
For Practitioners
Open Sourcing Anaconda Accelerate
We’re very excited to announce the open sourcing and splitting of the proprietary Anaconda Accelerate library into several new projects. This change has been a long time com...
Read More
For Practitioners
Reinforcing Open Data Science Foundations with conda 4.3 Release
At Continuum Analytics, we talk a lot about Open Data Science—this new world order of analytics that is rapidly accelerating the pace of innovation around Big Data and Data ...
Read More