为了账号安全,请及时绑定邮箱和手机立即绑定

熊猫行动中的进度指示器

熊猫行动中的进度指示器

慕的地10843 2019-12-12 14:17:21
我经常对超过1500万行的数据帧执行熊猫操作,我很乐意能够访问特定操作的进度指示器。是否存在基于文本的大熊猫拆分应用合并操作进度指示器?例如,类似:df_users.groupby(['userID', 'requestDate']).apply(feature_rollup)其中feature_rollup包含一些DF列并通过各种方法创建新用户列的函数。对于大型数据帧,这些操作可能要花费一些时间,因此我想知道是否有可能在iPython笔记本中提供基于文本的输出,从而向我更新进度。到目前为止,我已经尝试了Python的规范循环进度指示器,但是它们并未以任何有意义的方式与熊猫互动。我希望pandas库/文档中有一些被我忽略的东西,它使人们知道了split-apply-combine的进度。一个简单的实现方法可能是查看apply功能在其上起作用的数据帧子集的总数,并将进度报告为这些子集的完成部分。这是否可能需要添加到库中?
查看完整描述

3 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

您可以使用装饰器轻松完成此操作


from functools import wraps 


def logging_decorator(func):


    @wraps

    def wrapper(*args, **kwargs):

        wrapper.count += 1

        print "The function I modify has been called {0} times(s).".format(

              wrapper.count)

        func(*args, **kwargs)

    wrapper.count = 0

    return wrapper


modified_function = logging_decorator(feature_rollup)

然后只需使用modified_function(并在您希望打印时更改它)


查看完整回答
反对 回复 2019-12-12
  • 3 回答
  • 0 关注
  • 478 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号