这个博客是记录一下平时工作中遇到的一些比较常见但不太好处理的数据清洗问题,博主还是个刚入职场的小白,目前遇到的场景问题还比较少,但我会一直更新的~
目录
1. 清洗日期
在工作中经常会遇到需要清洗日期时间数据

我的想法是把数据拆解开在用replace进行替换,然后在粘贴在一起
df = pd.read_excel('test.xlsx')
df['日期'] = df['日期'].astype(str)
date['year'] = df['日期'].str[0:4]
date['mm'] = df['日期'].str[4:6].replace('tt','00').replace('','00')
date['dd'] = df['日期'].str[6:8].replace('tt','00').replace('','00')
df['日期'] = date['year']+date['mm']+date['dd']
这时日期这列数据会清洗为如下

可以根据需求替换修改内容,不知道有没有大佬有更方便的方法,欢迎交流~
2. 数据分列合并
想把下图中的数据展开并在一列中展示

这里我想到的是先把这列数据拆分开在用explode函数进行展开
df['阿斯顿'] = df['阿斯顿'].str.split(";")
data = df.explode('阿斯顿').reset_index(drop = True)
data.drop_duplicates(inplace = True)
展开结果

3. 时间段数据处理
3.1 某个时间差内字段出现频次大于2(动态时间)

当前需求为:查找30分钟内id出现2次以上且area不为bb的数据
目前想法为:首先以ID为分组对time进行排序,新增一列根据ID分组对time下移一位,效果如下

本文分享了作者在数据清洗过程中遇到的挑战,包括日期清洗、数据分列合并、时间段处理(动态时间差与固定时间段统计)以及Excel数据表合并问题。文章详细介绍了使用Python的pandas库解决这些问题的方法,例如利用replace、explode函数以及时间差计算等技巧,并提供了部分代码示例。
最低0.47元/天 解锁文章
1119





