我猜想这是我之前提出的一个简化版问题,链接在这里。【更新:很遗憾不是这个问题。】
如果你使用Pandas 0.11版本,可以尝试以下代码:
您会得到预期的结果:
但如果只有一个结果组,则会得到一个非常奇怪的Series:
但我更希望的结果是一个与此等效的DataFrame:
如果你使用Pandas 0.11版本,可以尝试以下代码:
df = pd.DataFrame([[1,2],[1,3],[2,4]],columns='a b'.split())
print df
g = df.groupby('a').count()
print type(g)
print g
您会得到预期的结果:
a b
0 1 2
1 1 3
2 2 4
<class 'pandas.core.frame.DataFrame'>
a b
a
1 2 2
2 1 1
但如果只有一个结果组,则会得到一个非常奇怪的Series:
df = pd.DataFrame([[1,2],[1,3],[1,4]],columns='a b'.split())
...
a b
0 1 2
1 1 3
2 1 4
<class 'pandas.core.series.Series'>
a
1 a 3
b 3
Name: 1, dtype: int64
但我更希望的结果是一个与此等效的DataFrame:
print pd.DataFrame([[3,3]],index=pd.Index([1],name='a'),columns='a b'.split())
a b
a
1 3 3
我不知道如何轻松地从系列中获取它(也不确定为什么我首先会得到它)。