PERF: assert_frame_equal / assert_series_equal by lukemanley · Pull Request #55971 · pandas-dev/pandas (original) (raw)
I think so, but after reviewing again I've reverted this line in favor of a lower level change to _array_equivalent_object
.
This has the benefit of improving performance for more cases, e.g. not just the index values but in this case the series values:
import pandas as pd
N = 100_000
values = pd._testing.makeStringIndex(N).values
ser1 = pd.Series(values.copy())
ser2 = pd.Series(values.copy())
%timeit pd.testing.assert_series_equal(ser1, ser2)
1.92 s ± 56.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
22.3 ms ± 4.18 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)