pandas 多列拼接性能优化

经常会将表格中多列拼接面单个key,如将表中c1,c2两列使用下划线拼接起来生成新列c3, 有两种操作方式

方式一:data['c3'] = data['c1'] + '_' + data['c2']

方式二:data['c3'] = data.apply(lambda row: '_'.join([row.c1, row.c2]), axis=1)

从耗时上看,方式一明显低于方式二,主要因为方式一是并行处理,方式二是迭代data每一行进行

但有时,由于需要达成逻辑复用和抽象的目的还是会使用方式二,因为这样可以将lambda作为配置内容根据不同的数据使用不同的“取Key”方法。这里描述一种即可以实现“取Key”逻辑配置化,又可以达成并行处理的实现方式:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。