Skip to content

Commit 7395de7

Browse files
committed
TST: vb for Index.intersection/union
1 parent ea64f87 commit 7395de7

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

pandas/src/internals.pyx

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
def get_reverse_indexer(ndarray[int32_t] indexer, Py_ssize_t length):
2+
cdef:
3+
Py_ssize_t i
4+
ndarray[int32_t] rev_indexer
5+
int32_t idx
6+
7+
rev_indexer = np.empty(length, dtype='i4')
8+
for i in range(len(indexer)):
9+
idx = indexer[i]
10+
if idx != -1:
11+
rev_indexer[idx] = i
12+
13+
return rev_indexer

vb_suite/index_object.py

+17
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,20 @@
33

44
SECTION = "Index / MultiIndex objects"
55

6+
7+
common_setup = """from pandas_vb_common import *
8+
"""
9+
10+
#----------------------------------------------------------------------
11+
# intersection, union
12+
13+
setup = common_setup + """
14+
rng = DateRange('1/1/2000', periods=10000, offset=datetools.Minute())
15+
rng = rng.view(Index)
16+
rng2 = rng[:-1]
17+
"""
18+
19+
index_datetime_intersection = Benchmark("rng.intersection(rng2)", setup,
20+
name='index_datetime_intersection')
21+
index_datetime_union = Benchmark("rng.union(rng2)", setup,
22+
name='index_datetime_union')

0 commit comments

Comments
 (0)