|
|
|
|
公众号矩阵

手把手教你利用Python轻松拆分Excel为多个CSV文件

本文介绍了如何利用Python对Excel文件进行拆分处理,实现可以根据任意列的内容进行拆分。轻轻松松几行Python代码就能实现。

作者:崔艳飞来源: Python爬虫与数据挖掘|2021-02-23 09:03

一、前言

在日常生活或者工作中的时候,我们偶尔会遇到这样一种让人头大的情况——当单个Excel文件较大或需要根据某一列的内容需要拆分为多个CSV文件时,用Excel的筛选功能去慢慢筛选虽然可行,但是来回反复倒腾工作量就比较大了。不过小伙伴们不用惊慌,其实这个情况我们只需要用Python几行代码就能实现!一起来看看吧~

二、项目目标

将单个Excel文件拆分为多个CSV文件或根据某一列的内容拆分为多个CSV文件。

三、项目准备

软件:PyCharm

需要的库:tkinter, pandas,xlrd

四、项目分析

1)如何选择目标文件?

利用tkinter库中的filedialog,进行要处理的目标文件选择。

2)如何读取Excel文件?

利用xlrd库进行Excel读取,获取要处理的目标Sheet。

3)如何筛选列内容?

利用pandas库进行列内容的筛选处理,得到拆分后的数据。

4)如何保存文件?

利用to_csv()保存数据,得到最终拆分后的目标文件。

五、项目实现

1、第一步导入需要的库

  1. from tkinter import filedialog 
  2. import pandas as pd 
  3. import xlrd 

2、第二步选择目标文件

  1. path = filedialog.askopenfilename().replace('/''\\'
  2. first_file_fh=xlrd.open_workbook(path) 
  3. # 选择要拆分的文件 
  4. first_file_sheet=first_file_fh.sheets() 

3、第三步读取Excel文件

  1. for sheetname in first_file_sheet: 
  2.       sheet_names.append(sheetname.name
  3.   df = pd.read_excel(path, sheet_name=sheet_names[0]) 

4、第四步根据某列的内容进行筛选并保存

  1. for c in list_c: 
  2.      # 根据列的内容循环读取 
  3.      df2=df[df['地市']==c] 
  4.      # 根据列的内容进行筛选 
  5.      df2.to_CSV('./excel_CSV/auto_ok/32_'+c+'.CSV', encoding='gbk',index=None) 
  6.      # 筛选后的内容保存为CSV 

六、效果展示

1、处理前Excel数据:


2、最终拆分后CSV文件保存结果:

 

七、总结

本文介绍了如何利用Python对Excel文件进行拆分处理,实现可以根据任意列的内容进行拆分。轻轻松松几行Python代码就能实现,好玩吧。

【编辑推荐】

  1. 为什么你总是学不会Python,入门Python的4大陷阱
  2. 厌倦了默认系统字体?这是在Windows 10上进行更改的方法
  3. 5G手机热销之前,要先解决这些问题
  4. 手把手教你用Python爬取百度搜索结果并保存
  5. 揭秘登上2021春晚舞台的黑科技-XR技术
【责任编辑:姜华 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

数据湖与数据仓库的分析实践攻略

数据湖与数据仓库的分析实践攻略

助力现代化数据管理:数据湖与数据仓库的分析实践攻略
共3章 | 创世达人

6人订阅学习

云原生架构实践

云原生架构实践

新技术引领移动互联网进入急速赛道
共3章 | KaliArch

33人订阅学习

数据中心和VPDN网络建设案例

数据中心和VPDN网络建设案例

漫画+案例
共20章 | 捷哥CCIE

220人订阅学习

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微