一.类中包含的函数
1.__init__函数 除了self外还包含了一个参数
2.excel_to_json 函数
(1)创建了一个新的字典,
(2)调用了person_info ,items_info,skill_info方法,更新了字典中的内容,
(3)返回这个字典。
3.person_info函数
(1)通过.loc[0,]获取个人的所有信息
(2)创建一个字典中包含个人的基础信息:姓名,工号,年龄,学历,专业,工作年限
(3)将这个字典赋值给self.persons
(4) 返回这个字典
4.items_info函数
(1)获取工号 其中调用了check_id_data 函数
(2)创建一个项目列表
(3)利用for循环遍历个人简历中的每一行 for i range(self.one_person_info.shape[0]):
创建一个有关项目的字典
挨个获取有关员工项目信息 项目名称/项目表述/当时所在的公司/项目所使用的技术/扮演的角色 其中项目所使用的技术调用了clean_skil_data 函数
将这个字典append到项目列表中
(4) 令项目名称,项目所使用的技术(用到了for循环),当时所在的公司为1?
(5) 返回一个id和items的字典
5.skill_info函数
(1)获取工号
(2)创建一个关于技能的列表
(3)利用for循环遍历每一行:
获取员工擅长的技能
用if判断技能是否为空,如果不为空的话,用clean_skil_data 函数清理技能之后,将所有的技能都累加起来。用set方法去重之后,更新列表。用for循环 令技能等于1?
(4)返回一个id和skill的字典
6.heck_id_data 函数 (除了self外还有一个value参数)
用len函数获取value,并用if函数将不够六位的前面的补上0
7.clean_skil_data (除了self函数外,还有一个skill参数)
用re.spilt分割技能
二.不在类中的函数:
1.write_json函数 参数有filename和data
2.save_info函数
(1)创建total_items = {} companys = {}skills = {}data_list = [] persons = []
(2)利用for循环遍历data文件夹下的每个文件 获得每一个文件的路径
利用pd.read_excel获取每个文件中的数据
创建类的实例
调用 excel_to_json 函数,并将获取的结果append到data_list中
用append 或者update更新total_items = {} companys = {} skills = {} persons = []的值
(3)用write_json函数将total_items companys skills 分别写入json文件
(4)分别创建公司,技能,项目的字典,键值从0开始标志起 (用到了for循环和zip函数) (5)利用for循环遍历data_list 将persons中每个人的信息转化为dataframe 并添加 :label 这一列 为employee 获取每个persons的id列 并将persons中的数据写入csv文件中 遍历项目信息中的每个键(for循环) 将关于项目的信息转化成dataframe格式 并添加item_ID:ID列 这一列的键值匹配到items_id_dict中的同一个项目的键值(用到了map) 并添加了:label 这一列 为item 获取每个项目的item_ID列 删除此dataframe中的'项目所使用的技术',"当时所在公司"这两列 创建一个包含 员工号,项目号,和类型这三列的dataframe 创建一个关于项目和技能的列表,其中放入项目所使用的技能 创建一个项目和技能的空的dataframe 用for循环遍历技能列表中的技能 通过技能匹配skill_id_dict中的对应的键值 创建一个关于项目号,技能号,类型的的dataframe 并创建一个把所有的项目和技能叠加起来的datafranme(用concat连接) 通过但是所在的公司找到companys_id_dict字典中对应的键值 创建一个包含员工号,公司号,类型,这三列的dataframe 创建一个包含项目id,公司id,类型,这三列的dtaframe 用if else 将这五个dataframe写入csv文件 获取技能 用for循环遍历每个技能 找到每个技能对应的skill_id_dict字典中的键值 创建一个包含员工号,技能号,类型的dataframe 将这个dataframe写入csv文件 (6)令i=0 获取skill_id_dict字典中的key值作为skill 用for循环遍历技能 获取skill_id_dict字典中对应的键值 创建含有技能id 技能 标签为skill的dataframe 将这个dataframe写入csv文件 (利用i+=1依次写入) (7)令i=0 用for循环遍历company中的key值 在companys_id_dict字典中获取对应的键值 创建一个含有公司公司id列,公司以及标签为company的dataframe 将这个datarframe写入csv文件(利用i+=1依次写入)
浙公网安备 33010602011771号