欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

pandas使用apply函数处理数据

时间:2023-05-15

pandas处理数据中常用的一种处理数据的方式是使用apply函数
会使数据处理起来更快更简单
可以进行单列 或者多列
单列

现在想根据他的月总业绩,进行分等级,并且命名为等级,等级有[‘A’,‘B’,‘C’,‘D’,‘E’,‘F’]

from pandas import read_exceldata = read_excel('yeji.xlsx')# 自定义函数# 因为只会用到一列,所以函数参数只有一列def cut_level(x):if x < 1200: return 'F' elif x < 5000: return 'E' elif x < 20000: return 'D' elif x < 100000: return 'C' elif x < 250000: return 'B' else: return 'A'data['等级'] = data['月总业绩'].apply(cut_to)print(data)


对于多列
现在等级出来了 我们需要返回一个比列,数据纯属捏造,只为了方便

# 对于多列# 根据月总业绩,等级划分一列比例# 因为是根据两列 所以函数传入参数2个。需要根据几列进行判断,函数就传入几个参数def cut_to(x, y):if x > 200000 and y == 'A':return 0.8elif x > 100000 and y == 'B':return 0.6elif x > 50000 and y == 'B':return 0.5else:return 0.4data['比例'] = data.apply(lambda row: cut_to(row['月总业绩'], row['等级'],axis=1)data

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。