学习Python处理Excel 难度0级别 多表合并、多条件筛选、找出重复项、去重

该代码示例展示了如何利用Python的Pandas库进行多表合并,然后通过多条件筛选找出在特定时间周期内回店且消费的重复客户清单,以及未再次回店的客户清单。首先,通过os.walk遍历指定目录下所有Excel文件并合并数据。接着,筛选出到店次数和消费次数大于0的记录。再使用duplicated和drop_duplicates函数处理重复数据,分别导出重复客户和未回店客户清单。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#本代码要点:多表合并、多条件筛选、找出重复项、去重
#主题:计算特定两个时间周期内回店且消费的重复客户清单以及未再次回店的客户清单
#EXCEL工作表:一维表
#备注:假设会员姓名不存在重名;否则找重复项的时候,要增加查找的列名

import os
import pandas as pd

#多表合并
inputdir=r’C:\Users\HW\Desktop\新建文件夹 ’
df_empty=pd.DataFrame(columns=[‘会员姓名’,‘生命周期’,‘到店次数’,‘消费次数’])
for parents,dirnames,filenames in os.walk(inputdir):
for filename in filenames:
df=pd.read_excel(os.path.join(parents,filename))
df_empty=df_empty.append(df,ignore_index=True)

#数据选择:多条件筛选+多列选择
df_new=df_empty[(df_empty[‘到店次数’]>0)&(df_empty[‘消费次数’]>0)][[‘会员姓名’,‘生命周期’,‘到店次数’,‘消费次数’]]

#Duplicated函数功能:查找并显示数据表中的重复值
df2=df_new[df_new.duplicated(‘会员姓名’)]
#导出两个时间周期内回店且消费的重复客户清单
df2.to_excel(“练习1”)

#drop_duplicates函数功能:去重;参数subset选择要去重的列名(可以选多个列名);参数keep,有三个可选参数,分别是 first、last、False,默认为 first,表示只保留第一次出现的重复项,删除其余重复项,last 表示只保留最后一次出现的重复项,False 则表示删除所有重复项
df3=df_new.drop_duplicates(subset=[‘会员姓名’],keep=False)
#导出未再次回店的客户清单
df3.to_excel(“练习2”)

mxblog博客系统 特性: 1. 使用ajax技术,单页面进行处理,ajax全部未使用微软控件,纯javascript编写,更轻量级。 2. 支持html5,兼容全部主流浏览器,包括firefox, chrome, IE, 搜狗, 360等。(兼容手机浏览器UC等) 3. 种主流数据库支持,一套程序数据库间任意切换,支持 sql server. oracle. access. mysql。 4. 新增相册功能,图批量上传,分类显示,可自动将图片生成为日志。 5. utf-8编码,更改配置就可以更换国语言。 6. 构程序结构,优化大量代码,程序结构更合理,执行效率更高。 7. 页面级缓存,访问速度更快。 8. 支持.net框架 4.0。 mxblog 3更新日志: 2014-07-22 v3.2.5.2 1, 增加文章简介自动排功能,更新相应language.config。 2, 除冗余引用。 2014-07-15 v3.2.5.1 1, 更新language.xml为language.config,更新config.xml为setting.config。 2, 是否启用GZip和editor的选择通过后台控制完成,不再需要调整配置文件。 2014-07-08 v3.2.5.0 1, GZip压缩不再使用第三方控件。 2014-07-03 v3.2.4.9 1, 页面标题更新。 2, 修改cache["Models_User"]bug。 3, 修改access_log语言插入异常bug。 2014-07-02 v3.2.4.8 1, 文章内容标题更新。 2, 扩充user标题和描述字段长度为255。 3, 增加mate信息显示。 2014-06-24 v3.2.4.7 1, 图片浏览显示URL并支持IE自动将URL粘贴到客户端剪贴板。 2, 更新ckeditor皮肤,提供种皮肤选择,并将ckeditor设置为默认编辑器。 3, 更新动态库版权信息,增加官网显示。 2014-06-23 v3.2.4.6 1, 可自助选择浏览器为ckeditor或fckeditor。 2, 更新mysql连接动态库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值