10年青少年编程教育经验 | 资深Python专家
前大厂技术总监 | 现编程教育创业者
专注青少年编程教育技能提升

ps:后台回复:“excel课程”获取到目前为止课程的测试文件(失效的话,在留言区留言
)。
今日技能
📱 如何通过pandas处理日期内容并进行分析
大家在日常工作里有没有遇到小王这样事情。
周一下午 5点,销售部实习生小王被部门王经理叫到办公室。“
”小王,这份用户行为数据报告明天早会要用,你今晚加个班处理一下。“说完,不等小王反应过来,就给他一个U盘。
然后告诉他,主要是要做下面的处理:
统一所有日期格式为 YYYY-MM-DD HH:MM:SS
筛选出 2025 年 11 月 1 日至 12 月 31 日的数据
按周统计用户活跃度
”好的“小王接过u盘,转身离开办公室,毕竟怎么说也改变不了什么。
回到工位上,他打开u盘,里面有两个excel文件,大概其中一个,有80万条数据,另一个20多万数据,算下来差不多要100多万。
然后他粗略的看了下日期,大致有这么些格式的。
2025/12/25
2025-12-25
25-12-2025
2025年12月25日
2025/12/25 14:30:00
这个用excel怎么弄,小王先尝试使用excel的手段。
先用 "文本分列向导" 处理不同分隔符
用TEXT()函数转换格式:=TEXT(A2,"YYYY-MM-DD HH:MM:SS")
进度: 2 小时只处理了 1 万条数据
因为数据量大了以后,每次筛选差不多都要2-3分钟才能反应过来,一遇到问题就可能要重做。
如果还这样弄下去,100万数据,起码要2-3天。根本不可能在明天早上完成。
”唉,怎么办呢?“,小王坐在位置上,抓着头发发出叹息。正好被路过的公司技术拿平叔听到了。
”怎么了,小王“
”是平叔呀,就是要处理100万excel记录中的日期,然后再进行必要的分析。excel太慢了,而且格式处理比较麻烦,你有办法吗?“小明简略地说了下问题,然后期盼地问道。
”这样啊,听上去没啥问题!”平叔平静地说道。
“我们来处理第一件事情,就是标准化日期格式”平叔边说边拿来自己的电脑,开始输入代码。
df['event_time'] = pd.to_datetime(df['收集日期'],errors='coerce')
这样,pandas就会自动帮我们把日期转成标准的日期,如果有错误就会标空。这个时候,只要打开excel看一下’event_time'为空的字段,然后再手工改一下就ok了。
然后我们来处理一下日期范围。
处理也很简单,也是一段代码的问题。
# 3. 时间范围筛选start_date = '2025-11-01'end_date = '2025-12-31'filtered_df = df[(df['event_time'] >= start_date)& (df['event_time'] <= end_date)]
这样,filtered_df 就是11月和12月份的数据集,只要对这个数据集进行处理就可以了。
然后又是一行代码,就得出按‘周’的活跃人数。
# 4. 按周统计weekly_stats = filtered_df.resample('W', on='event_time')['user_id'].count()
这里除了’W'之外,还支持
D (天)、W (周)、M (月)、Q (季度)
就这样一会,100万条记录就处理完了,差不多使用了2分钟就搞定。
欢迎在评论区分享你的想法!
方老师说: 🚀 现在屏幕前的你已经比90%的同龄人领先一步了!
接下来可以:
用pandas实现如何进行excel数据分组与聚合分析的处理(下期教程教!)
⚠️ 遇到问题?评论区甩截图,方老师尽量在24小时内回复!
关注我们,不错过任何一节课! ✨