为什么在Pandas中两次访问相同的索引很慢?

时间:2015-04-07 16:10:20

标签: python pandas hashtable

使用Pandas时,访问相同的行索引两次比获得两个不同的行要慢。

r = pd.Series(index=range(50000))
%timeit r.ix[[0,1]] #1000 loops, best of 3: 276 µs per loop
%timeit r.ix[[0,0]] #100 loops, best of 3: 3.83 ms per loop

非唯一索引案例使用此较慢的函数(由prun标识):

{method 'get_indexer_non_unique' of 'pandas.index.IndexEngine' objects}

我理解,如果Series的索引具有非唯一元素,我们就不能再将其视为哈希表,因此需要使用此函数。如果我们要求的行列表具有非唯一元素,为什么会出现这种情况?我很惊讶熊猫甚至“知道”这个。

0 个答案:

没有答案