前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python pandas对社保数据进行整理整合

python pandas对社保数据进行整理整合

作者头像
哆哆Excel
发布2022-10-25 13:54:06
4740
发布2022-10-25 13:54:06
举报
文章被收录于专栏:哆哆Excel

本文是自己工作中用到的代码,

用的到知识点有

  1. DataFrame.read_excel,to_excel
  2. iloc
  3. dropna
  4. merge

吐槽一下社保导出的文件,:

1.社保现在分开个系统购买,导出来的文件有两个,一个是养老保险与职业年金,一个是医疗保险、失业保险、工伤保险、生育保险(但是其他两个的标题也有但数据为0)

2.前面几列是没数据的

3.有大量的合并单元格,又是不规则的,注意是“大量的”“不规则的”

4.每22个数据就来一几行标题

我们每次要查找一个数据,用Ctrl+F,输入查找都要很长时间。又要在两个文件中查找,

所以整理社保的数据是Excel使用者的一个挑战。

来吧,上代码

=====代码====

代码语言:javascript
复制
# -*- coding: utf-8 -*-
import pandas as pd
df=pd.read_excel('E:/G01社保/2019/201908XXXXX四险.xls',header=None)
df=df[df[4]=="2049867-佛山市XXXXX"]
df=df.iloc[:,[9,12,14,16,17,35,38,39,41,42,43,45,46,48,50,51,53,54,55,56,57,59,60,61,62]]
#df=df.dropna(axis=1,how='all')
df.columns=["社会保障号","姓名2","total","gr_sum","dw_sum","yl_to","yl_by_dw","yl_by_gr","yl_b_dw","yl_b_gr","sy_to","sy_by_dw","sy_by_gr","sy_b_dw","sy_b_gr","gs_to","gs_by_dw","gs_by_gr","gs_b_dw","gs_b_gr","sy_to","sy_by_dw","sy_by_gr","sy_b_dw","sy_b_gr"]
mydata=pd.read_excel('E:/G01社保/2019/201908XXXX养老保险和职业年金台账.xls',header=None)
mydata=mydata[mydata[4]=="2049867-XXXXXXX"]
mydata=mydata.dropna(axis=1,how='all')
mydata.columns=['序号','单位编号','个人编号','社会保障号','姓名','本月征收金额合计','个人缴费合计','单位缴费合计','养老合计','养老本月单位收','养老本月个人收','养老本月单位补','养老本月个人补','职业合计','职业本月单位收','职业本月个人收','职业本月单位补','职业本月个人补']
d_total=mydata.merge(df,on='社会保障号')
d_total.to_excel("dddd.xlsx",index=False)
#print(d_total.head())

代码解析:

  1. 先用df读取“四险”的数据,
  2. 再用第四列中含有“"2049867-佛山市XXXXX"”的全部取出,如果没有的就删除,这一步可以删除重复的合并单元形式的每隔几行就有的烦人的标题,
  3. 用再.iloc[取所有的行数据,【取出指定的列的数据】],
  4. 再添加上标题,这里文字太多了,我就用了字母,只是“社会保障号”用文字,与下面的一致
  5. 再导入“养老与职业年金的。xlsx”数据
  6. mydata=mydata[mydata[4]=="2049867-XXXXXXX"]到第四列中有“***”的数据行的数据,这可以删除烦人的标题
  7. mydata=mydata.dropna(axis=1,how='all')删除整列为0的数据
  8. 添加标题
  9. d_total=mydata.merge(df,on='社会保障号')利用“社会保障号”为识别进行数据的合并。
  10. 输出到为Excel文件, ================= python的数据清洗很强大 ====今天就学习到此====
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档