熊猫分组后并行应用

熊猫分组后并行应用,第1张

熊猫分组并行应用

尽管确实应该将其内置到熊猫中,但这似乎可行

import pandas as pdfrom joblib import Parallel, delayedimport multiprocessingdef tmpFunc(df):    df['c'] = df.a + df.b    return dfdef applyParallel(dfGrouped, func):    retLst = Parallel(n_jobs=multiprocessing.cpu_count())(delayed(func)(group) for name, group in dfGrouped)    return pd.concat(retLst)if __name__ == '__main__':    df = pd.Dataframe({'a': [6, 2, 2], 'b': [4, 5, 6]},index= ['g1', 'g1', 'g2'])    print 'parallel version: '    print applyParallel(df.groupby(df.index), tmpFunc)    print 'regular version: '    print df.groupby(df.index).apply(tmpFunc)    print 'ideal version (does not work): '    print df.groupby(df.index).applyParallel(tmpFunc)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5623441.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-15
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存