使用groupby后使用head的熊猫错误(axis = 1)

时间:2017-12-24 03:57:52

标签: python pandas pandas-groupby

df = pd.DataFrame([1.0, 2, -3], columns=[45])

dfg = df.groupby(lambda x : x**2, axis=1)

dfg.groups
{2025: Int64Index([45], dtype='int64')}

dfg.head(1)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-614-69eb5f9c0aac> in <module>()
----> 1 dfg.head(1)

/Users/aankur/anaconda2/lib/python2.7/site-packages/pandas/core/groupby.pyc in head(self, n)
   1655         self._reset_group_selection()
   1656         mask = self._cumcount_array() < n
-> 1657         return self._selected_obj[mask]
   1658 
   1659     @Substitution(name='groupby')

/Users/aankur/anaconda2/lib/python2.7/site-packages/pandas/core/frame.pyc in __getitem__(self, key)
   1956         if isinstance(key, (Series, np.ndarray, Index, list)):
   1957             # either boolean or fancy integer index
-> 1958             return self._getitem_array(key)
   1959         elif isinstance(key, DataFrame):
   1960             return self._getitem_frame(key)

/Users/aankur/anaconda2/lib/python2.7/site-packages/pandas/core/frame.pyc in _getitem_array(self, key)
   1993             elif len(key) != len(self.index):
   1994                 raise ValueError('Item wrong length %d instead of %d.' %
-> 1995                                  (len(key), len(self.index)))
   1996             # check_bool_indexer will throw exception if Series key cannot
   1997             # be reindexed to match DataFrame rows

ValueError: Item wrong length 1 instead of 3.

我知道为什么这是一个错误。但我试图解释上面查看错误消息的错误原因。关于想要做什么的任何想法?为什么说项目长度为1而不是3?

0 个答案:

没有答案