Groupby级熊猫

时间:2018-11-08 22:33:43

标签: python pandas pandas-groupby spyder

我正在尝试使用Spyder中的level参数来了解Pandas中的Groupby函数。

   def print_groups(groupobject):
        for name, group in groupobject:
            print (name)
            print (group.head())

从2012年1月到2012年12月,我拥有与两个符号有关的数据。我已将变量mi的索引设置为Symbol,Year和Month。

mi = s4g.set_index(['Symbol','Year','Month'])
mi

enter image description here

我想做的是使用group(level = 0)参数,发现运行此行代码时仅出现数据集的前五行。

mig_11 = mi.groupby(level=0)
print_groups(mig_11)

enter image description here

当我使用level = 1时,我发现同样的事情发生。

mig_11a = mi.groupby(level=1)
print_groups(mig_11a)

enter image description here

即使将其更改为级别= 2,我仍然看到前5行。

mig_11b = mi.groupby(level=2)
print_groups(mig_11b)

enter image description here

mig_11b的第二张图片 在此处输入图片说明

enter image description here

我只是不明白为什么当原始数据截止到12月时,为什么要在每个groupby级别上看到前五行。

非常感谢。

1 个答案:

答案 0 :(得分:0)

感谢@coldspeed。

我需要在下面的代码中替换print(group.head())以进行print(group),以查看整个数据集。

def print_groups(groupobject):
    for name, group in groupobject:
        print (name)
        print (group.head())#Replace with print (group)