Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用pandas.loc访问器从数据帧中选择行和列的“正确”方法是什么?_Pandas - Fatal编程技术网

使用pandas.loc访问器从数据帧中选择行和列的“正确”方法是什么?

使用pandas.loc访问器从数据帧中选择行和列的“正确”方法是什么?,pandas,Pandas,这个问题与我提出的问题有很大关系,但我觉得这是两个不同的问题 这里有两行独立的代码。我认为它们应该产生相同的结果,但不理解为什么第一个会抛出异常。我怀疑第一种方法是不正确的,但不知道为什么 df.loc[df.year.notnull(),['year']] # LINE 1: throws "MemoryError" (see below) df.loc[df.year.notnull()].year # LINE 2: WORKS FINE 有关引发的异常的更多信息: ../

这个问题与我提出的问题有很大关系,但我觉得这是两个不同的问题

这里有两行独立的代码。我认为它们应该产生相同的结果,但不理解为什么第一个会抛出异常。我怀疑第一种方法是不正确的,但不知道为什么

df.loc[df.year.notnull(),['year']] # LINE 1: throws "MemoryError" (see below) df.loc[df.year.notnull()].year # LINE 2: WORKS FINE 有关引发的异常的更多信息:

../lib/python2.7/site-packages/pandas/core/index.pyc in get_indexer_non_unique(self, target, **kwargs) 843 tgt_values = target.values 844 --> 845 indexer, missing = self._engine.get_indexer_non_unique(tgt_values) 846 return Index(indexer), missing 847
很抱歉,我还没有弄明白如何用玩具示例重现错误。我的DataFrame df有100000行和17列。它是从一个更大的数据框1000000行和89列中采样的。较大的数据帧是使用read_csv和index_col=False创建的。我不确定这些信息是否相关。

两者都应该有效,因为前者将返回数据帧而不是序列。请考虑发布GITHUB……打开,看起来链接的问题固定在0.12。