【python】筛选出异常数据排除,对错误内容修改,根据某列筛选后对另两列进行拼接并统计次数。

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注Python)
img

正文

| 杨二 | 销售部 | 2023年 | 10月 | 完成修炼科目16 |
| 杨二 | 销售部 | 2023年 | 11月 | 完成修炼科目17 |
| 杨二 | 销售部 | 2023年 | 12月888 | 完成修炼科目19 |
| 刘三 | 财务部 | 2024年 | 9月 | 完成修炼科目20 |
| 刘三 | 财务部 | 2024年 | 10月 | 完成修炼科目1 |
| 刘三 | 财务部 | 2022年 | 11月 | 完成修炼科目3 |
| 刘三 | 财务部 | 2022年 | 12月888 | 完成修炼科目4 |
| 刘三 | 财务部 | 2022年 | 9月 | 完成修炼科目5 |
| 刘三 | 财务部 | 2022年 | 10月 | 完成修炼科目6 |
| 刘三 | 财务部 | 2022年 | 11月 | 完成修炼科目7 |
| 刘三 | 财务部 | 2022年 | 12月 | 完成修炼科目8 |
| 刘三 | 财务部 | 2022年 | 9月 | 完成修炼科目7 |
| 刘三 | 财务部 | 2022年 | 10月 | 完成修炼科目8 |
| 刘三 | 财务部 | 2022年 | 11月 | 完成修炼科目10 |
| 刘三 | 财务部 | 2022年 | 12月 | 完成修炼科目11 |
| 刘三 | 财务部 | 2022年 | 9月 | 完成修炼科目12 |
| 刘三 | 财务部 | 2022年 | 10月 | 完成修炼科目13 |
| 刘三 | 财务部 | 2022年 | 11月 | 完成修炼科目14 |
| 刘三 | 财务部 | 2022年 | 12月 | 完成修炼科目15 |
| 刘三 | 财务部 | 2022年 | 9月 | 出差 |
| 刘三 | 财务部 | 2023年 | 10月 | 完成修炼科目17 |
| 刘三 | 财务部 | 2023年 | 11月 | 完成修炼科目19 |
| 刘三 | 财务部 | 2023年 | 12月 | 完成修炼科目20 |
| 刘三 | 财务部 | 2023年 | 9月 | 完成修炼科目2 |
| 刘三 | 财务部 | 2023年 | 10月 | 完成修炼科目3 |
| 刘三 | 财务部 | 2023年 | 11月 | 完成修炼科目4 |
| 刘三 | 财务部 | 2024年 | 12月 | 完成修炼科目5 |
| 刘三 | 财务部 | 2022年 | 9月 | 完成修炼科目6 |
| 刘三 | 财务部 | 2022年 | 10月 | 完成修炼科目7 |
| 刘三 | 财务部 | 2022年 | 11月 | 完成修炼科目8 |
| 刘三 | 财务部 | 2023年 | 12月 | 完成修炼科目10 |
| 刘三 | 财务部 | 2023年 | 9月 | 完成修炼科目11 |
| 刘三 | 财务部 | 2023年 | 10月 | 完成修炼科目12 |
| 刘三 | 财务部 | 2023年 | 11月 | 完成修炼科目13 |
| 刘三 | 财务部 | 2023年 | 12月 | 完成修炼科目15 |
| 刘三 | 财务部 | 2023年 | 9月 | 完成修炼科目16 |
| 刘三 | 财务部 | 2024年 | 10月 | 完成修炼科目17 |
| 刘三 | 财务部 | 2022年 | 11月 | 完成修炼科目19 |
| 刘三 | 财务部 | 2022年 | 12月 | 完成修炼科目20 |
| 刘三 | 财务部 | 2022年 | 9月 | 完成修炼科目1 |
| 刘三 | 财务部 | 2023年 | 10月 | 完成修炼科目2 |
| 刘三 | 财务部 | 2023年 | 11月 | 完成修炼科目3 |
| 刘三 | 财务部 | 2023年 | 12月 | 完成修炼科目4 |
| 刘三 | 财务部 | 2023年 | 9月 | 完成修炼科目5 |
| 刘三 | 财务部 | 2023年 | 10月 | 完成修炼科目6 |
| 刘三 | 财务部 | 2023年 | 11月 | 完成修炼科目7 |
| 刘三 | 财务部 | 2024年 | 12月 | 完成修炼科目8 |
| 刘三 | 财务部 | 2022年 | 9月 | 完成修炼科目7 |
| 刘三 | 财务部 | 2022年 | 10月 | 完成修炼科目8 |
| 刘三 | 财务部 | 2022年 | 11月 | 完成修炼科目9 |
| 刘三 | 财务部 | 2023年 | 12月 | 完成修炼科目10 |
| 刘三 | 财务部 | 2023年 | 9月 | 完成修炼科目11 |
| 刘三 | 财务部 | 2023年 | 10月 | 完成修炼科目12 |
| 刘三 | 财务部 | 2023年 | 11月 | 完成修炼科目13 |
| 刘三 | 财务部 | 2023年 | 12月 | 完成修炼科目14 |

输出结果展示

1.xlsx

2.xlsx

3.xlsx

想筛选自己想要的数据就得多加筛选条件,具体放在什么位置得看情况,主打就是一个变通。

还得一步一步的调试。

代码如下:


import pandas as pd
import re

def rename_on_keywords(text, keywords):
    for keyword in keywords:
        if keyword in text:
            return keyword
    return text

def merge_groups_on_keywords(text, keywords):
    for keyword in keywords:
        groups = re.findall(f'([^、]*{keyword}[^、]*\(\d+\))', text)
        counts = [int(re.search('\((\d+)\)', group).group(1)) for group in groups]
        if groups:
            text = text.replace(groups[0], f'{keyword} ({sum(counts)})')
            for group in groups[1:]:
                text = text.replace('、' + group, '')
    return text

# 读取 Excel 文件
df = pd.read_excel('kq.xlsx', engine='openpyxl')

# 列名定义
column1_name = '姓名'
column2_name = '年'
column3_name = '月'
column4_name = '当月完成工作'
column5_name = '年'
column6_name = '月'
column_to_rename = '月'
keywords = ['12月']

# 定义你想要排除的特定值列表
specific_values4 = ['出差']
specific_values5 = ['2024']
specific_values6 = ['11']

# 排除 'Column4' 和 'Column5' 中等于特定值列表的行
df = df[~df[column4_name].isin(specific_values4) & ~df[column5_name].isin(specific_values5)& ~df[column6_name].isin(specific_values6)]

# 对于每个 '姓名',在其对应的列中,找出包含特定关键字的唯一值,并将这些值替换为关键字本身
df[column_to_rename] = df.groupby(column1_name)[column_to_rename].transform(lambda x: x.apply(lambda y: rename_on_keywords(y, keywords)))

# 对 Column1 进行分组,并将每个组的 Column2 和 Column3 值合并为一个字符串,并计算每个字符串的出现次数
merged = df.groupby(column1_name).apply(lambda x: '、'.join([f'{v} ({c})' for v, c in (x[column2_name] + ' ' + x[column3_name]).value_counts().items()]))

# 将结果转换为 DataFrame
merged_df = merged.reset_index()
merged_df.columns = [column1_name, 'Merged_' + column2_name + '_' + column3_name]

# 将结果保存到新的 Excel 文件中
merged_df.to_excel('1.xlsx', index=False)

# 读取保存的 Excel 文件
df = pd.read_excel('1.xlsx')

# 列名定义
column2_name = 'Merged_年_月'
keywords = ['12月','10月']

# 对每个“用户名”对应的列中包含关键字的部分进行合并,并且重新命名为关键字,然后对次数进行求和
df[column2_name] = df[column2_name].apply(lambda x: merge_groups_on_keywords(x, keywords))
文末有福利领取哦~
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

👉**一、Python所有方向的学习路线**

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。![img](https://img-blog.csdnimg.cn/c67c0f87cf9343879a1278dfb067f802.png)

👉**二、Python必备开发工具**

![img](https://img-blog.csdnimg.cn/757ca3f717df4825b7d90a11cad93bc7.png)  
👉**三、Python视频合集**

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。  
![img](https://img-blog.csdnimg.cn/31066dd7f1d245159f21623d9efafa68.png)

👉 **四、实战案例**

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。**(文末领读者福利)**  
![img](https://img-blog.csdnimg.cn/e78afb3dcb8e4da3bae5b6ffb9c07ec7.png)

👉**五、Python练习题**

检查学习结果。  
![img](https://img-blog.csdnimg.cn/280da06969e54cf180f4904270636b8e.png)

👉**六、面试资料**

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。  
![img](https://img-blog.csdnimg.cn/a9d7c35e6919437a988883d84dcc5e58.png)

![img](https://img-blog.csdnimg.cn/5db8141418d544d3a8e9da4805b1a3f9.png)

👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)**
![img](https://img-blog.csdnimg.cn/img_convert/44ecfb75305c90095312a62b574d510f.png)

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
研究,那么很难做到真正的技术提升。**

**需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)**
[外链图片转存中...(img-4C3ZT4li-1713426809568)]

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 11
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值