diff --git a/asv_bench/benchmarks/indexing.py b/asv_bench/benchmarks/indexing.py index 53827cfcf64fb..84d95a23bd446 100644 --- a/asv_bench/benchmarks/indexing.py +++ b/asv_bench/benchmarks/indexing.py @@ -3,6 +3,7 @@ lower-level methods directly on Index and subclasses, see index_object.py, indexing_engine.py, and index_cached.py """ +from datetime import datetime import warnings import numpy as np @@ -531,4 +532,25 @@ def time_chained_indexing(self, mode): df2["C"] = 1.0 +class Block: + params = [ + (True, "True"), + (np.array(True), "np.array(True)"), + ] + + def setup(self, true_value, mode): + self.df = DataFrame( + False, + columns=np.arange(500).astype(str), + index=date_range("2010-01-01", "2011-01-01"), + ) + + self.true_value = true_value + + def time_test(self, true_value, mode): + start = datetime(2010, 5, 1) + end = datetime(2010, 9, 1) + self.df.loc[start:end, :] = true_value + + from .pandas_vb_common import setup # noqa: F401 isort:skip