大神们帮个忙。看看数据处理有啥问题

import pandas as pd #pandas 是对表格数据模型在python上的模拟,它有简单的像SQL 对数据的处理,
import re #正则表达式

data = pd.read_excel(r'51job.xls',sheet_name='Job')
result = pd.DataFrame(data) #将数据总表模板 加载

a = result.dropna(axis=0,how='any') #值为0则删除行 axis=1则是删除列,any是只要有空值就删除

还有一个inplace参数,True是在原数据集上操作,False是返回新的数据集

pd.set_option('display.max_rows',None) #输出全部行,不省略

#删除与大数据无关的职业
b = u'数据'
number = 1
li = a['职位']

for i in range(0,len(li)):
try:
if b in li[i]:
#print(number,li[i])
number+=1
else:
a = a.drop(i,axis=0) #删除整行
except:
pass

学历表格那一栏出现招多少人,表示爬取数据出错,删除该行数据

b2 = '人'
li2 = a['学历要求']

for i in range(0,len(li2)):
try:
if b2 in li2[i]:
# print(number,li2[i])
number += 1
a = a.drop(i, axis=0)
except:
pass
#转换薪资单位为万/月
b3 =u'万/年'
b4 =u'千/月'
li3 = a['薪资']
for i in range(0,len(li3)):
try:
if b3 in li3[i]:
x = re.findall(r'\d.?\d+',li3[i])
# print(x)
min_ = format(float(x)/12,'.2f') #转换成浮点型并保留两
max_ = format(float(x)/12,'.2f')
li3[i][1] = min_+'-'+max_+u'万/月'
if b4 in li3[i]:
x = re.findall(r'\d
.?\d+',li3[i])
#print(x)
#input()
min_ = format(float(x[0])/10,'.2f')
max_ = format(float(x[1])/10,'.2f')
li3[i][1] = str(min_+'-'+max_+'万/月')
print(i,li3[i])

except:
    pass

#保存到另一个Excel文件

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。