Skip to content

Commit 1f1e13f

Browse files
authored
MNT: Bump dev pin on NumPy (#60987)
* MNT: Bump dev pin on NumPy * Fix type-hints * Docs fixup * fixups * Fixup * Fixup * doctest fixups * More doc fixes * Some reverts * Avoid float16 * Cleanup * Remove repr from MyExtensionArray * Fixup
1 parent 7e4d306 commit 1f1e13f

File tree

23 files changed

+99
-78
lines changed

23 files changed

+99
-78
lines changed

asv_bench/benchmarks/indexing_engines.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,14 @@ class NumericEngineIndexing:
6767
def setup(self, engine_and_dtype, index_type, unique, N):
6868
engine, dtype = engine_and_dtype
6969

70+
if (
71+
index_type == "non_monotonic"
72+
and dtype in [np.int16, np.int8, np.uint8]
73+
and unique
74+
):
75+
# Values overflow
76+
raise NotImplementedError
77+
7078
if index_type == "monotonic_incr":
7179
if unique:
7280
arr = np.arange(N * 3, dtype=dtype)
@@ -115,6 +123,14 @@ def setup(self, engine_and_dtype, index_type, unique, N):
115123
engine, dtype = engine_and_dtype
116124
dtype = dtype.lower()
117125

126+
if (
127+
index_type == "non_monotonic"
128+
and dtype in ["int16", "int8", "uint8"]
129+
and unique
130+
):
131+
# Values overflow
132+
raise NotImplementedError
133+
118134
if index_type == "monotonic_incr":
119135
if unique:
120136
arr = np.arange(N * 3, dtype=dtype)

doc/source/getting_started/comparison/comparison_with_r.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,7 @@ In Python, since ``a`` is a list, you can simply use list comprehension.
383383

384384
.. ipython:: python
385385
386-
a = np.array(list(range(1, 24)) + [np.NAN]).reshape(2, 3, 4)
386+
a = np.array(list(range(1, 24)) + [np.nan]).reshape(2, 3, 4)
387387
pd.DataFrame([tuple(list(x) + [val]) for x, val in np.ndenumerate(a)])
388388
389389
meltlist
@@ -402,7 +402,7 @@ In Python, this list would be a list of tuples, so
402402

403403
.. ipython:: python
404404
405-
a = list(enumerate(list(range(1, 5)) + [np.NAN]))
405+
a = list(enumerate(list(range(1, 5)) + [np.nan]))
406406
pd.DataFrame(a)
407407
408408
For more details and examples see :ref:`the Intro to Data Structures

doc/source/user_guide/basics.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2064,12 +2064,12 @@ different numeric dtypes will **NOT** be combined. The following example will gi
20642064

20652065
.. ipython:: python
20662066
2067-
df1 = pd.DataFrame(np.random.randn(8, 1), columns=["A"], dtype="float32")
2067+
df1 = pd.DataFrame(np.random.randn(8, 1), columns=["A"], dtype="float64")
20682068
df1
20692069
df1.dtypes
20702070
df2 = pd.DataFrame(
20712071
{
2072-
"A": pd.Series(np.random.randn(8), dtype="float16"),
2072+
"A": pd.Series(np.random.randn(8), dtype="float32"),
20732073
"B": pd.Series(np.random.randn(8)),
20742074
"C": pd.Series(np.random.randint(0, 255, size=8), dtype="uint8"), # [0,255] (range of uint8)
20752075
}

doc/source/user_guide/enhancingperf.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@ can be improved by passing an ``np.ndarray``.
171171
In [4]: %%cython
172172
...: cimport numpy as np
173173
...: import numpy as np
174+
...: np.import_array()
174175
...: cdef double f_typed(double x) except? -2:
175176
...: return x * (x - 1)
176177
...: cpdef double integrate_f_typed(double a, double b, int N):
@@ -225,6 +226,7 @@ and ``wraparound`` checks can yield more performance.
225226
...: cimport cython
226227
...: cimport numpy as np
227228
...: import numpy as np
229+
...: np.import_array()
228230
...: cdef np.float64_t f_typed(np.float64_t x) except? -2:
229231
...: return x * (x - 1)
230232
...: cpdef np.float64_t integrate_f_typed(np.float64_t a, np.float64_t b, np.int64_t N):

doc/source/whatsnew/v0.11.0.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,10 @@ Numeric dtypes will propagate and can coexist in DataFrames. If a dtype is passe
7474

7575
.. ipython:: python
7676
77-
df1 = pd.DataFrame(np.random.randn(8, 1), columns=['A'], dtype='float32')
77+
df1 = pd.DataFrame(np.random.randn(8, 1), columns=['A'], dtype='float64')
7878
df1
7979
df1.dtypes
80-
df2 = pd.DataFrame({'A': pd.Series(np.random.randn(8), dtype='float16'),
80+
df2 = pd.DataFrame({'A': pd.Series(np.random.randn(8), dtype='float32'),
8181
'B': pd.Series(np.random.randn(8)),
8282
'C': pd.Series(range(8), dtype='uint8')})
8383
df2

environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ dependencies:
2323

2424
# required dependencies
2525
- python-dateutil
26-
- numpy<2
26+
- numpy<3
2727

2828
# optional dependencies
2929
- beautifulsoup4>=4.11.2

pandas/compat/numpy/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@
3636
r".*In the future `np\.long` will be defined as.*",
3737
FutureWarning,
3838
)
39-
np_long = np.long # type: ignore[attr-defined]
40-
np_ulong = np.ulong # type: ignore[attr-defined]
39+
np_long = np.long
40+
np_ulong = np.ulong
4141
except AttributeError:
4242
np_long = np.int_
4343
np_ulong = np.uint

pandas/core/accessor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ def register_dataframe_accessor(name: str) -> Callable[[TypeT], TypeT]:
351351
AttributeError: The series must contain integer data only.
352352
>>> df = pd.Series([1, 2, 3])
353353
>>> df.int_accessor.sum()
354-
6"""
354+
np.int64(6)"""
355355

356356

357357
@doc(_register_accessor, klass="Series", examples=_register_series_examples)

pandas/core/arrays/base.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -941,7 +941,7 @@ def argmin(self, skipna: bool = True) -> int:
941941
--------
942942
>>> arr = pd.array([3, 1, 2, 5, 4])
943943
>>> arr.argmin()
944-
1
944+
np.int64(1)
945945
"""
946946
# Implementer note: You have two places to override the behavior of
947947
# argmin.
@@ -975,7 +975,7 @@ def argmax(self, skipna: bool = True) -> int:
975975
--------
976976
>>> arr = pd.array([3, 1, 2, 5, 4])
977977
>>> arr.argmax()
978-
3
978+
np.int64(3)
979979
"""
980980
# Implementer note: You have two places to override the behavior of
981981
# argmax.
@@ -1959,10 +1959,10 @@ def _formatter(self, boxed: bool = False) -> Callable[[Any], str | None]:
19591959
--------
19601960
>>> class MyExtensionArray(pd.arrays.NumpyExtensionArray):
19611961
... def _formatter(self, boxed=False):
1962-
... return lambda x: "*" + str(x) + "*" if boxed else repr(x) + "*"
1962+
... return lambda x: "*" + str(x) + "*"
19631963
>>> MyExtensionArray(np.array([1, 2, 3, 4]))
19641964
<MyExtensionArray>
1965-
[1*, 2*, 3*, 4*]
1965+
[*1*, *2*, *3*, *4*]
19661966
Length: 4, dtype: int64
19671967
"""
19681968
if boxed:
@@ -2176,15 +2176,15 @@ def _reduce(
21762176
Examples
21772177
--------
21782178
>>> pd.array([1, 2, 3])._reduce("min")
2179-
1
2179+
np.int64(1)
21802180
>>> pd.array([1, 2, 3])._reduce("max")
2181-
3
2181+
np.int64(3)
21822182
>>> pd.array([1, 2, 3])._reduce("sum")
2183-
6
2183+
np.int64(6)
21842184
>>> pd.array([1, 2, 3])._reduce("mean")
2185-
2.0
2185+
np.float64(2.0)
21862186
>>> pd.array([1, 2, 3])._reduce("median")
2187-
2.0
2187+
np.float64(2.0)
21882188
"""
21892189
meth = getattr(self, name, None)
21902190
if meth is None:

pandas/core/arrays/datetimelike.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ def _unbox_scalar(
275275
--------
276276
>>> arr = pd.array(np.array(["1970-01-01"], "datetime64[ns]"))
277277
>>> arr._unbox_scalar(arr[0])
278-
numpy.datetime64('1970-01-01T00:00:00.000000000')
278+
np.datetime64('1970-01-01T00:00:00.000000000')
279279
"""
280280
raise AbstractMethodError(self)
281281

0 commit comments

Comments
 (0)