What’s new in 3.0.3 (May 11, 2026)#
These are the changes in pandas 3.0.3. See Release notes for a full changelog including other versions of pandas.
Enhancements#
Starting with pandas 3.0.0, time zones are represented by default using the standard library’s
zoneinfomodule (ordatetime.timezonefor fixed offsets) instead of usingpytz(release note).The IO methods using
pyarrowunder the hood such asread_parquet(),read_feather()andread_orc()(orread_csv()when specifying the engine) were still returning timezone usingpytz. Those have now been updated to consistently use defaultzoneinfotime zones as well (GH 65134).
Fixed regressions#
Fixed a regression in
pandas.bdate_range()where specifyingendon a weekend withperiodsreturned fewer dates than expected (GH 64834)Fixed a regression in
to_timedelta()ignoring theunitargument for round float values when mixed with non-round floats in a list (GH 65150)Fixed a regression in
Series.rank()with custom extension dtypes (GH 64976)Fixed a regression in
Timedelta.round(),Timedelta.floor(), andTimedelta.ceil()raisingZeroDivisionErrorfor sub-secondfreq(GH 64828)Fixed reading of Parquet files with timezone-aware timestamps or localizing of a timeseries with a
pytztimezone when an older version ofpytzwas installed (GH 64978)Fixed a regression in
read_csv()withengine="c"wherethousands=","could incorrectly parse non-numeric values like"1 ,"as integers instead of strings (GH 64655)Fixed a performance regression when working with timezone-aware timeseries data using a default
zoneinfotime zone, i.e. slowdown when accessing components or localizing a naive timeseries (GH 64363)
Bug fixes#
Fixed
ArrowDtypestring arithmetic for addition betweenstringandlarge_stringtyped arrays (GH 65220)Fixed a bug in adding missing values (e.g.
NA) to a pyarrow-backed string array or Series raising an error instead of propagating the missing value (GH 64968)Fixed a bug in
Series.rank()with period dtype and missing values, always sorting missing values at the top, regardless of thena_optionvalue (GH 64976)Fixed a bug in reading files with a chained URL scheme (e.g.
tar://) with the latest version offsspec(GH 65462).Fixed a hang in
Series.str.replace()for PyArrow-backed string data when replacing an empty pattern; behavior now matches Python’sstr.replace(GH 64941).
Contributors#
A total of 10 people contributed patches to this release. People with a “+” by their names contributed a patch for the first time.
Abinesh N +
Albert Y. Shih +
An1k4et
Aniket Vijay Vishwakarma
Boris Bilich +
Jeongmin Gil
Joris Van den Bossche
Lumberbot (aka Jack)
jbrockmendel
pandas Development Team