@cache_readonly<EOL><INDENT>def groups(self):<DEDENT>
if len(self.groupings) == <NUM_LIT:1>:<EOL><INDENT>return self.groupings[<NUM_LIT:0>].groups<EOL><DEDENT>else:<EOL><INDENT>to_groupby = lzip(*(ping.grouper for ping in self.groupings))<EOL>to_groupby = Index(to_groupby)<EOL>return self.axis.groupby(to_groupby)<EOL><DEDENT>
dict {group name -> group labels}