Pandas/Python 将具有两列的系列转换为数据框

sfo*_*ney 2 python series pandas

我的问题很简单,但我没有在 stackexchange 或 google 上的任何地方找到答案。在 python 的 Pandas 中,如何将具有两列的系列转换回数据框?我的系列(agggenfreq)在下面。生成它的代码是这样的:

agggenfreq=df2000[['freq','name','sex']].groupby(['name', 'sex']).sum()['freq']
Run Code Online (Sandbox Code Playgroud)

其中 df2000 是一个包含以下列的数据框:

 name sex   freq  year     agg
 0  Hannah   F  23071  2000  162834
 1  Hannah   M     25  2000  162834
 2  Hannah   F  20706  2001  162834
 3  Hannah   M     22  2001  162834
 4  Hannah   F  18814  2002  162834
Run Code Online (Sandbox Code Playgroud)

聚集频率:

 name       sex
 Aaden      F          5
            M       2980
 Aaliah     F        518
 Aaliya     F        583
 Aaliyah    F      40975
            M         49
 Aamir      M        607
 Aaniyah    F        741
 Aanya      F        954
 Aaralyn    F        581
 Aarav      M       1374
 Aaron      F        365
            M      94269
 Aarush     M        763
 Aarya      F        375
            M        190
 Aaryan     M        560
 Aaryn      F        293
            M        272
 Aayush     M        632
 Abagail    F       3051
 Abbey      F       5230
            M          6
Run Code Online (Sandbox Code Playgroud)

有没有一种好方法可以将其转换回数据帧?如果这里的系列中只有一栏(我认为这在技术上不是正确的术语,但您应该知道我的意思),我会这样做:

数据 = pd.DataFrame({'agg': aggfreq,'name':aggfreq.index})

我如何用两列做到这一点?提前致谢。编辑:另外,如果有人知道更好的方法来执行上述(第一个)函数,而不必制作系列,我很想知道:)

Bre*_*arn 5

那是一个带有 MultiIndex 的系列。您可以通过执行agggenfreq.reset_index().