Skip to content

Commit 4229a70

Browse files
author
Mike Phung
committed
TST GH#40498 Return Int64 and Float64 to asv benchmark and update setups.
1 parent 756abdb commit 4229a70

File tree

2 files changed

+24
-8
lines changed

2 files changed

+24
-8
lines changed

asv_bench/benchmarks/frame_methods.py

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -379,8 +379,10 @@ class Fillna:
379379
"object",
380380
"int32",
381381
"int64",
382+
"Int64",
382383
"float32",
383384
"float64",
385+
"Float64",
384386
"datetime64[ns]",
385387
"datetime64[ns, tz]",
386388
"timedelta64[ns]",
@@ -399,16 +401,23 @@ def setup(self, inplace, method, dtype):
399401
"timedelta64[ns]": timedelta_range(start="1 day", periods=N, freq="1D"),
400402
}
401403
self.df = DataFrame({f"col_{i}": data[dtype] for i in range(M)})
402-
self.df[::2] = None
403404
self.value = (
404-
dict(zip(self.df.columns, data[dtype][:M])) if not method else None
405+
dict(zip(self.df.columns, self.df.sample().iloc[0]))
406+
if not method
407+
else None
405408
)
409+
self.df[::2] = None
406410
else:
407411
data = np.random.randn(N, M)
408-
data = data.astype(dtype)
409-
self.df = DataFrame({f"col_{i}": data[i] for i in range(M)})
412+
if dtype in ["int32", "int64", "Int64"]:
413+
data = data.round()
414+
self.df = DataFrame({f"col_{i}": data[i] for i in range(M)}, dtype=dtype)
415+
self.value = (
416+
dict(zip(self.df.columns, self.df.sample().iloc[0]))
417+
if not method
418+
else None
419+
)
410420
self.df[::2] = None
411-
self.value = dict(zip(self.df.columns, data[M])) if not method else None
412421

413422
def time_frame_fillna(self, inplace, method, dtype):
414423
self.df.fillna(value=self.value, inplace=inplace, method=method)

asv_bench/benchmarks/series_methods.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,10 @@ class Fillna:
6565
"object",
6666
"int32",
6767
"int64",
68+
"Int64",
6869
"float32",
6970
"float64",
71+
"Float64",
7072
"datetime64[ns]",
7173
"datetime64[ns, tz]",
7274
"timedelta64[ns]",
@@ -85,14 +87,19 @@ def setup(self, inplace, method, dtype):
8587
"timedelta64[ns]": timedelta_range(start="1 day", periods=N, freq="1D"),
8688
}
8789
self.ser = Series(data[dtype])
90+
self.value = (
91+
dict(zip(self.ser.index, self.ser.values)) if not method else None
92+
)
8893
self.ser[::2] = None
89-
self.value = dict(zip(self.ser.index, data[dtype])) if not method else None
9094
else:
9195
data = np.random.randn(N)
92-
data = data.astype(dtype)
96+
if dtype in ["int32", "int64", "Int64"]:
97+
data = data.round()
9398
self.ser = Series(data, dtype=dtype)
99+
self.value = (
100+
dict(zip(self.ser.index, self.ser.values)) if not method else None
101+
)
94102
self.ser[::2] = None
95-
self.value = dict(zip(self.ser.index, data)) if not method else None
96103

97104
def time_series_fillna(self, inplace, method, dtype):
98105
self.ser.fillna(value=self.value, inplace=inplace, method=method)

0 commit comments

Comments
 (0)