1

这个问题与我问的另一个问题密切相关,但我觉得这是两个独立的问题。

这是两行单独的代码。我认为他们应该产生相同的结果,但不明白为什么第一个会引发异常。我怀疑第一种方法在某种程度上是“不正确的”,但不知道为什么......

df.loc[df.year.notnull(),['year']] # LINE 1: throws "MemoryError" (见下文)
df.loc[df.year.notnull()].year # 第 2 行:工作正常

关于抛出异常的更多信息:

../lib/python2.7/site-packages/pandas/core/index.pyc in get_indexer_non_unique(self, target, **kwargs)
    第843章
    844
--> 845 索引器,缺少 = self._engine.get_indexer_non_unique(tgt_values)
    846 返回索引(索引器),丢失
    847

抱歉,我还没有弄清楚如何用玩具示例重现错误。我的 DataFrame "df" 有 100,000 行和 17 列。它是从更大的数据帧(1,000,000 行和 89 列)中采样的。较大的数据框是使用 read_csv 和 index_col=False 创建的。我不确定这些信息是否相关。

4

0 回答 0