Skip to content

Commit 4a3fb4b

Browse files
authored
Backport PR #61560: DOC: Set date for v2.3.0.rst whatsnew (#61561)
1 parent 1976447 commit 4a3fb4b

File tree

1 file changed

+34
-114
lines changed

1 file changed

+34
-114
lines changed

doc/source/whatsnew/v2.3.0.rst

Lines changed: 34 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
.. _whatsnew_230:
22

3-
What's new in 2.3.0 (Month XX, 2024)
3+
What's new in 2.3.0 (June 4, 2025)
44
------------------------------------
55

66
These are the changes in pandas 2.3.0. See :ref:`release` for a full changelog
@@ -10,38 +10,25 @@ including other versions of pandas.
1010

1111
.. ---------------------------------------------------------------------------
1212
13-
.. _whatsnew_230.upcoming_changes:
14-
15-
Upcoming changes in pandas 3.0
16-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17-
18-
1913
.. _whatsnew_230.enhancements:
2014

2115
Enhancements
2216
~~~~~~~~~~~~
2317

24-
.. _whatsnew_230.enhancements.enhancement1:
25-
26-
enhancement1
27-
^^^^^^^^^^^^
28-
29-
3018
.. _whatsnew_230.enhancements.other:
3119

3220
Other enhancements
3321
^^^^^^^^^^^^^^^^^^
3422

3523
- The semantics for the ``copy`` keyword in ``__array__`` methods (i.e. called
3624
when using ``np.array()`` or ``np.asarray()`` on pandas objects) has been
37-
updated to raise FutureWarning with NumPy >= 2 (:issue:`60340`)
38-
- :meth:`Series.str.decode` result now has ``StringDtype`` when ``future.infer_string`` is True (:issue:`60709`)
39-
- :meth:`pandas.api.interchange.from_dataframe` now uses the `PyCapsule Interface <https://arrow.apache.org/docs/format/CDataInterface/PyCapsuleInterface.html>`_ if available, only falling back to the Dataframe Interchange Protocol if that fails (:issue:`60739`)
40-
- :meth:`~Series.to_hdf` and :meth:`~DataFrame.to_hdf` now round-trip with ``StringDtype`` (:issue:`60663`)
25+
updated to work correctly with NumPy >= 2 (:issue:`57739`)
26+
- :meth:`Series.str.decode` result now has :class:`StringDtype` when ``future.infer_string`` is True (:issue:`60709`)
27+
- :meth:`~Series.to_hdf` and :meth:`~DataFrame.to_hdf` now round-trip with :class:`StringDtype` (:issue:`60663`)
4128
- Improved ``repr`` of :class:`.NumpyExtensionArray` to account for NEP51 (:issue:`61085`)
4229
- The :meth:`Series.str.decode` has gained the argument ``dtype`` to control the dtype of the result (:issue:`60940`)
43-
- The :meth:`~Series.cumsum`, :meth:`~Series.cummin`, and :meth:`~Series.cummax` reductions are now implemented for ``StringDtype`` columns (:issue:`60633`)
44-
- The :meth:`~Series.sum` reduction is now implemented for ``StringDtype`` columns (:issue:`59853`)
30+
- The :meth:`~Series.cumsum`, :meth:`~Series.cummin`, and :meth:`~Series.cummax` reductions are now implemented for :class:`StringDtype` columns (:issue:`60633`)
31+
- The :meth:`~Series.sum` reduction is now implemented for :class:`StringDtype` columns (:issue:`59853`)
4532

4633
.. ---------------------------------------------------------------------------
4734
.. _whatsnew_230.notable_bug_fixes:
@@ -56,11 +43,26 @@ These are bug fixes that might have notable behavior changes.
5643
notable_bug_fix1
5744
^^^^^^^^^^^^^^^^
5845

46+
In previous versions, comparing :class:`Series` of different string dtypes (e.g. ``pd.StringDtype("pyarrow", na_value=pd.NA)`` against ``pd.StringDtype("python", na_value=np.nan)``) would result in inconsistent resulting dtype or incorrectly raise. pandas will now use the hierarchy
5947

6048
Increased minimum version for Python
6149
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
6250

63-
pandas 2.3.0 supports Python 3.10 and higher.
51+
in determining the result dtype when there are different string dtypes compared. Some examples:
52+
53+
- When ``pd.StringDtype("pyarrow", na_value=pd.NA)`` is compared against any other string dtype, the result will always be ``boolean[pyarrow]``.
54+
- When ``pd.StringDtype("python", na_value=pd.NA)`` is compared against ``pd.StringDtype("pyarrow", na_value=np.nan)``, the result will be ``boolean``, the NumPy-backed nullable extension array.
55+
- When ``pd.StringDtype("python", na_value=pd.NA)`` is compared against ``pd.StringDtype("python", na_value=np.nan)``, the result will be ``boolean``, the NumPy-backed nullable extension array.
56+
57+
.. _whatsnew_230.api_changes:
58+
59+
API changes
60+
~~~~~~~~~~~
61+
62+
- When enabling the ``future.infer_string`` option, :class:`Index` set operations (like
63+
union or intersection) will now ignore the dtype of an empty :class:`RangeIndex` or
64+
empty :class:`Index` with ``object`` dtype when determining the dtype of the resulting
65+
Index (:issue:`60797`)
6466

6567
.. ---------------------------------------------------------------------------
6668
.. _whatsnew_230.deprecations:
@@ -71,119 +73,35 @@ Deprecations
7173
- Deprecated the ``"pyarrow_numpy"`` storage option for :class:`StringDtype` (:issue:`60152`)
7274
- The deprecation of setting the argument ``include_groups`` to ``True`` in :meth:`DataFrameGroupBy.apply` has been promoted from a ``DeprecationWarning`` to ``FutureWarning``; only ``False`` will be allowed (:issue:`7155`)
7375

74-
.. ---------------------------------------------------------------------------
75-
.. _whatsnew_230.performance:
76-
77-
Performance improvements
78-
~~~~~~~~~~~~~~~~~~~~~~~~
79-
-
80-
-
81-
8276
.. ---------------------------------------------------------------------------
8377
.. _whatsnew_230.bug_fixes:
8478

8579
Bug fixes
8680
~~~~~~~~~
8781

88-
Categorical
89-
^^^^^^^^^^^
90-
-
91-
-
92-
93-
Datetimelike
94-
^^^^^^^^^^^^
95-
-
96-
-
97-
98-
Timedelta
99-
^^^^^^^^^
100-
-
101-
-
102-
103-
Timezones
104-
^^^^^^^^^
105-
-
106-
-
107-
10882
Numeric
10983
^^^^^^^
110-
- Enabled :class:`Series.mode` and :class:`DataFrame.mode` with ``dropna=False`` to sort the result for all dtypes in the presence of NA values; previously only certain dtypes would sort (:issue:`60702`)
111-
- Bug in :meth:`Series.round` on object columns no longer raises ``TypeError``
112-
-
113-
114-
Conversion
115-
^^^^^^^^^^
116-
-
117-
-
84+
- Bug in :meth:`Series.mode` and :meth:`DataFrame.mode` with ``dropna=False`` where not all dtypes would sort in the presence of ``NA`` values (:issue:`60702`)
85+
- Bug in :meth:`Series.round` where a ``TypeError`` would always raise with ``object`` dtype (:issue:`61206`)
11886

11987
Strings
12088
^^^^^^^
121-
- Bug in :meth:`Series.__pos__` and :meth:`DataFrame.__pos__` did not raise for :class:`StringDtype` with ``storage="pyarrow"`` (:issue:`60710`)
122-
- Bug in :meth:`Series.rank` for :class:`StringDtype` with ``storage="pyarrow"`` incorrectly returning integer results in case of ``method="average"`` and raising an error if it would truncate results (:issue:`59768`)
89+
- Bug in :meth:`.DataFrameGroupBy.min`, :meth:`.DataFrameGroupBy.max`, :meth:`.Resampler.min`, :meth:`.Resampler.max` where all NA values of string dtype would return float instead of string dtype (:issue:`60810`)
90+
- Bug in :meth:`DataFrame.sum` with ``axis=1``, :meth:`.DataFrameGroupBy.sum` or :meth:`.SeriesGroupBy.sum` with ``skipna=True``, and :meth:`.Resampler.sum` with all NA values of :class:`StringDtype` resulted in ``0`` instead of the empty string ``""`` (:issue:`60229`)
91+
- Bug in :meth:`Series.__pos__` and :meth:`DataFrame.__pos__` where an ``Exception`` was not raised for :class:`StringDtype` with ``storage="pyarrow"`` (:issue:`60710`)
92+
- Bug in :meth:`Series.rank` for :class:`StringDtype` with ``storage="pyarrow"`` that incorrectly returned integer results with ``method="average"`` and raised an error if it would truncate results (:issue:`59768`)
12393
- Bug in :meth:`Series.replace` with :class:`StringDtype` when replacing with a non-string value was not upcasting to ``object`` dtype (:issue:`60282`)
94+
- Bug in :meth:`Series.str.center` with :class:`StringDtype` with ``storage="pyarrow"`` not matching the python behavior in corner cases with an odd number of fill characters (:issue:`54792`)
12495
- Bug in :meth:`Series.str.replace` when ``n < 0`` for :class:`StringDtype` with ``storage="pyarrow"`` (:issue:`59628`)
125-
- Bug in ``ser.str.slice`` with negative ``step`` with :class:`ArrowDtype` and :class:`StringDtype` with ``storage="pyarrow"`` giving incorrect results (:issue:`59710`)
126-
- Bug in the ``center`` method on :class:`Series` and :class:`Index` object ``str`` accessors with pyarrow-backed dtype not matching the python behavior in corner cases with an odd number of fill characters (:issue:`54792`)
127-
128-
Interval
129-
^^^^^^^^
130-
-
131-
-
96+
- Bug in :meth:`Series.str.slice` with negative ``step`` with :class:`ArrowDtype` and :class:`StringDtype` with ``storage="pyarrow"`` giving incorrect results (:issue:`59710`)
13297

13398
Indexing
13499
^^^^^^^^
135-
- Fixed bug in :meth:`Index.get_indexer` round-tripping through string dtype when ``infer_string`` is enabled (:issue:`55834`)
136-
-
137-
138-
Missing
139-
^^^^^^^
140-
-
141-
-
142-
143-
MultiIndex
144-
^^^^^^^^^^
145-
-
146-
-
100+
- Bug in :meth:`Index.get_indexer` round-tripping through string dtype when ``infer_string`` is enabled (:issue:`55834`)
147101

148102
I/O
149103
^^^
150-
-
151-
-
152-
153-
Period
154-
^^^^^^
155-
-
156-
-
157-
158-
Plotting
159-
^^^^^^^^
160-
-
161-
-
162-
163-
Groupby/resample/rolling
164-
^^^^^^^^^^^^^^^^^^^^^^^^
165-
-
166-
-
167-
168-
Reshaping
169-
^^^^^^^^^
170-
-
171-
-
172-
173-
Sparse
174-
^^^^^^
175-
-
176-
-
177-
178-
ExtensionArray
179-
^^^^^^^^^^^^^^
180-
-
181-
-
182-
183-
Styler
184-
^^^^^^
185-
-
186-
-
104+
- Bug in :meth:`DataFrame.to_excel` which stored decimals as strings instead of numbers (:issue:`49598`)
187105

188106
Other
189107
^^^^^
@@ -196,3 +114,5 @@ Other
196114

197115
Contributors
198116
~~~~~~~~~~~~
117+
118+
.. contributors:: v2.2.3..v2.3.0|HEAD

0 commit comments

Comments
 (0)