怎么把number这一列的数据换成平均值啊

怎么把number这一列的数据换成平均值啊

问题描述:

img


????????????

是全部吗,这样子做一下试试
假设你的dataframe名字是frame

meanvalue=frame['number'].mean()
frame['number']=[meanvalue]*len(frame)

import re
def f(x):
    number=re.findall(r'\d+',x)#正则表达式识别金额(有可能是1,有可能是2,具体看这个工资有没有范围)
    if not number:
        return x#没有匹配到数字,则返回原始x值(比如面议)
    else:
        transfer=[float(each) for each in number]#把识别到的数字转换为浮点型(如果工资有小数点的话就这么做)
        average=sum(transfer)/len(transfer)#求平均值
        string='%.1f元/月'%average if int(average)!=average else '%d元/月'%average#if int(average)!=average:average不是整数
        return string
frame['salary']=frame['salary'].apply(f)#用apply对salary这一列每个元素(相当于x)用f函数进行处理