我的第一個數(shù)據(jù)分析項目——51job“數(shù)據(jù)分析”崗位分析(數(shù)據(jù)清洗篇四)

一、統(tǒng)一薪資格式


1

2

3

薪資的類型一共有6種,把薪資統(tǒng)一到千/月,對薪資是一個范圍的數(shù)據(jù)分開放入2列(low_salary,high_salary),薪資只有一個值的放入low_salary

主要代碼內(nèi)容如下:

def Salary(path,table):
    workbook = load_workbook(path)
    sheet = workbook[table]
    n = sheet.max_row
    
    a = Fraction(10,12)#萬/年換算成千/月 先乘10再除以12
    b = Fraction(20,1000)#每月工作20天

    #6種薪資類型
    k1 = "萬/月"
    k2 = "千/月"
    k3 = "萬/年"
    k4 = "元/天"
    k5 = "千以下/月"
    k6 = "萬以下/年"

    salarydic1 = {k1:10,k2:1,k3:a}#處理有“-”的數(shù)據(jù)
    salarydic2 = {k4:b,k5:1,k6:a}#處理無“-”的數(shù)據(jù)
    
    sheet.cell(1,2).value = "low_salary"
    sheet.cell(1,3).value = "high_salary"
    
    for i in range(2,n+1):
        s = sheet.cell(i,1).value
        if s:
            if "-" in s:
                for k in salarydic1:
                    if k in s:
                        slist = s.split("-")
                        low_salary = float(slist[0])*salarydic1[k]
                        high_salary = float(slist[1].replace(k,""))*salarydic1[k]
                        #print(round(low_salary,2),round(high_salary,2))
                        sheet.cell(i,2).value = round(low_salary,2)
                        sheet.cell(i,3).value = round(high_salary,2)
            else:
                for k in salarydic2:
                    if k in s:
                        low_salary = float(s.replace(k,""))*salarydic2[k]
                        #print(round(low_salary,2))
                        sheet.cell(i,2).value = round(low_salary,2)
    workbook.save(path)
薪資處理結(jié)果

二、簡化所在行業(yè),取第一個逗號前的文本


行業(yè)顯示

主要代碼內(nèi)容如下:

def Companyfield(path,table):
    workbook = load_workbook(path)
    sheet = workbook[table]
    n = sheet.max_row
    
    sheet.cell(1,3).value = "new companyfield"
    for i in range(2,n+1):
        s = sheet.cell(i,2).value
        if s:
            if "," in s:
                s = s.split(",")[0]
            else:
                s = s
            sheet.cell(i,3).value = s
    workbook.save(path)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、Python簡介和環(huán)境搭建以及pip的安裝 4課時實驗課主要內(nèi)容 【Python簡介】: Python 是一個...
    _小老虎_閱讀 6,340評論 0 10
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,741評論 18 399
  • 1 沒有愛情的婚姻,會有多可怕? 蘇小晴掛了電話,她已經(jīng)很久沒見過那個暫時還是自己丈夫的男人,朱峰。有多久了,三年...
    南歌子吟閱讀 901評論 5 9
  • 六子五維閱讀課第一課(5.11~5.17) 三次作業(yè)目標(biāo): 1、找到自己未來半年的學(xué)習(xí)方向 2、學(xué)會換維閱讀和主題...
    timespace閱讀 255評論 0 3
  • 銀龍 得過且過 得過且過 得過且過 直到 曲子再次被吹起 心跳有了象征意義
    醉仙王子閱讀 307評論 0 0

友情鏈接更多精彩內(nèi)容