我发现Hadley的plyr包对R非常有用,它是转换数据的一个很好的DSL。is所解决的问题是如此普遍,以至于我面对的是其他用例,而不是在R中操作数据,而是在其他编程语言中。在
有人知道是否存在一个为python做类似事情的模块吗?比如:
def ddply(rows, *cols, op=lambda group_rows: group_rows):
"""group rows by cols, then apply the function op to each group
and return the results aggregating all groups
rows is a dict or list of values read by csv.reader or csv.DictReader"""
pass
它应该不会太难实现,但是如果它已经存在的话就太好了。我要实现它,使用itertools.groupby
按cols
分组,然后应用op
函数,然后使用itertools.chain把一切都锁起来。有更好的解决办法吗?在
这是我起草的实施方案:
另一个步骤是有一组预定义的函数,可以作为
op
应用,比如sum
和其他实用函数。在相关问题 更多 >
编程相关推荐