我一直给人的印象是,Pandas在对数据帧中的行进行索引时会使用哈希,因此df.loc [some_label]之类的操作为O(1)。
但是,我今天才意识到情况并非如此,至少对于多索引数据帧而言并非如此。正如document中指出的那样,“即使数据没有排序,索引也会起作用,但是效率很低(并显示PerformanceWarning)”。我发现有些文章似乎建议,对于多索引数据框,如果您已在数据框上调用sort_index(),则Pandas将使用基于二进制搜索的索引。否则,它只会线性扫描行。
我的问题是