Skip to main content
`Ctrl`+`K`

# What’s new in 3.0.2 (March 30, 2026)

These are the changes in pandas 3.0.2. See Release notes for a full changelog including other versions of pandas.

## Enhancements

- Added support for `pd.col()` expressions in `Series.case_when()` (GH 64070).

## Fixed regressions

- Fixed a regression in `json_normalize()` that caused top-level missing entries to raise a `TypeError`. Missing entries are once again interpreted as empty records (GH 64188)

- Fixed a regression in `DataFrame.convert_dtypes()` resulting in corrupted result with sliced `DataFrame` with mixed dtypes as input (GH 64702)

- Fixed a regression in `DataFrame.sort_index()` and `Series.sort_index()` raising `AssertionError` when called with `level=` on a `RangeIndex` (GH 64383)

- Fixed a regression in `DataFrame.sum()` on empty DataFrames with a mix of numeric and string dtypes (GH 64657)

- Fixed a regression in `HDFStore.select()` where the `where` clause on a datetime index silently returned empty results when the index had non-nanosecond resolution (GH 64310)

- Fixed a regression in `Series.interpolate()` where `limit_direction="both"` with `limit` greater than the Series length raised `ValueError` (GH 64322)

- Fixed a regression in `Series.str.find()` returning byte offsets instead of character offsets for multi-byte UTF-8 characters (GH 64123)

- Fixed performance regression in assigning into a string column with string data (GH 64530)

## Bug fixes

- Fixed a bug in `to_datetime()` that could give an unnecessary `RuntimeWarning` when converting DataFrame containing missing values (GH 64141)

- Fixed a bug in `Series.var()` computing the variance of complex numbers incorrectly (GH 62421)

- Fixed a bug in `to_hdf()` with string columns raising an error when using compression (GH 64180)

- Fixed a bug in the `sum()` method with python-backed string dtype returning incorrect value for an empty Series and ignoring the `min_count` argument (GH 64683)

- Fixed a bug when using `col()` with Python functions `bool()`, `iter()`, `copy()`, and `deepcopy()` either failed or produced incorrect results; these now all raise a `TypeError` (GH 64267)

- Fixed a bug where `col()` and expressions derived from it failed with power (`**`) and matrix multiplication (`@`) operators (GH 64267)

- Fixed a bug where `DataFrame.div()` ignored the `axis` argument when used with `level` for MultiIndex columns (GH 64428)

- Fixed a bug where assigning `NA` to a string column could trigger a PyArrow error and corrupt data (GH 64320)

## Contributors

A total of 22 people contributed patches to this release. People with a “+” by their names contributed a patch for the first time.

- Alex Lubbock

- An1k4et +

- Aniket Vijay Vishwakarma +

- Dr Alex Mitre +

- Eric Chen

- Fadi Younes +

- Harikrishna KP +

- Jeongmin Gil

- Joaquín Rivero +

- Joris Van den Bossche

- Lumberbot (aka Jack)

- Matthew Roeschke

- Richard Shadrach

- Sanchit Rishi

- Scott Shambaugh +

- dependabot[bot]

- jbrockmendel

- moktamd +

- pandas Development Team

- pre-commit-ci[bot]

- vme50 +

- Álvaro Kothe