Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Python 自动整理 Excel 表格

Python 自动整理 Excel 表格

作者头像
短短的路走走停停
发布于 2019-07-30 09:08:36
发布于 2019-07-30 09:08:36
2.3K00
代码可运行
举报
文章被收录于专栏:程序猿声程序猿声
运行总次数:0
代码可运行

相信有不少朋友日常工作会用到 Excel 处理各式表格文件,更有甚者可能要花大把时间来做繁琐耗时的表格整理工作。最近有朋友问可否编程来减轻表格整理工作量,今儿我们就通过实例来实现 Python 对表格的自动化整理。

首先我们有这么一份数据表 source.csv:

我们要做的是从上表中提取数据,来生成一份符合以下要求的表格:

  1. 按照以下分组名单 group.xls 来整理数据表中的数据:
  1. 最终要展现的数据项:
  1. 其中“K数据/60”为数据表中的“数据K”/60后保留的2位小数

我们先看手工 Excel 如何处理以上需求:要在 source.csv 数据表中读取读取每条数据,放入 group.xls 匹配的分组成员中,最后筛选需要的数据项,再对特定的 “数据K”进行运算处理。

那么 Python 又将如何操作呢?这里我们要用到功能强大的 pandas 库。

pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。 pandas 百度百科

首先导入 pandas 库,通过相关的函数读取 csv 和 xls 表格内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd
# 读取 group.xls 分组信息
group = pd.read_excel("group.xls",header=None)
group.columns=["分组","角色"]
print(group)
# 读取 source.csv 获取所有成员数据
source = pd.read_csv("source.csv")
print(source)

我们可以首先对 source.csv 中的数据项进行筛选,需要的数据项有“角色”、“编号”、“数据B”、“数据C”、“数据D”和“数据K”:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 通过 iloc[:,[列坐标]] 来定位需要的各列数据
filter_merge = source.iloc[:,[0,2,4,5,6,13]]
print(filter_merge)

接下来是根据分组角色来匹配角色数据,注意到 group.xls 和 source.csv 共有“角色”一项,我们可以通过此项将两个表格融合从而形成匹配填充的效果。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
combine = pd.merge(group,filter_merge,on="角色")

接下来我们在第二列插入运算后的“数据K/60”:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
combine.insert(1,"数据K/60",round(filter_merge["数据K"]/60,2))

最终,我们将生成的数据格式写入新的 xlsx 表格中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
combine.to_excel(excel_writer="result.xlsx",index=False)

最终自动生成的表格如下:


以上便是 Excel 表格整理的 Python 代码简单实现,在操作过程中也遇到几个问题贴在这里供大家参考:

  1. 导入 pandas 时可能会报错: 解决:根据报错信息安装需要的相关模块
  2. 要进行表格整理的电脑为公司电脑、无法连接外网下载 Python 解决: https://blog.csdn.net/sundan93/article/details/62888068 参照以上链接,先在外网电脑下载 Python 安装文件以及相关的模块安装文件,拷贝到无网络电脑进行安装
  3. 以上表格整理的实例在现实工作有参考意义么: 回答:文中表格的原型是一份员工工作记录,根据人员分组进行相关的数据统计。类似的分组统计成员数据都可以根据此简单 Python 模版来实现。
  4. 遇到现实中的其他问题如何自学尝试解决? 回答:首先要归纳问题并进行相关搜索,了解相关的知识打基础,最好是多参考几个相关的帖子或者书籍,然后生成自己的代码。实现本文中的代码,我是先大致看了一遍《对比 Excel 轻松学习 Python 数据分析》这本书,收获还挺多。
  5. 并不会 Python,能通过其他方式来实现表格整理的自动化吗? 回答:也是有其他方式的,例如 Excel VBA 来写宏脚本,感兴趣的可以搜索尝试下。

移步 留言区 可获取代码下载链接,权当一个参考和提示,自行搜索尝试实现才能真正掌握哈,有问题欢迎留言反馈~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序猿声 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
实战反爬虫
0.说在前面1.反爬虫方案2.实现 2.1 导库 2.2 selenium 2.3 BS处理图片3.作者的话
公众号guangcity
2019/09/20
1.1K0
实战反爬虫
python爬虫实例
参考: https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/#find-all
cuijianzhe
2022/06/14
5490
python爬虫实例
Python爬虫学习 煎蛋网全站妹子图爬虫
通过上一篇文章的爬取过程,我们基本上理解了抓取一个网站的大致流程。因为一个网站虽然有很多页,但是大部分网站每一页的HTML标签内容都是相同的。我们只要获取到一页的内容,就可以获得所有页的内容了。那么开始之前,我们来分析一下煎蛋网妹子图页面的URL。
python学习教程
2020/06/09
1.5K0
python爬虫之——爬取煎蛋网图片
事先声明:本人之前并没有听说过什么煎蛋网,代码学习来自其他网站,仅供学习使用。 import requests import os import time from bs4 import BeautifulSoup # 发出请求获得HTML源码 def get_html(url): # 指定一个浏览器头 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.3
种花家的奋斗兔
2020/11/13
5090
Python爬虫——Beautiful Soup
Beautiful Soup是Python处理HTML或XML的解析库,使用Beautiful Soup需要安装Beautiful Soup库和lxml的库 Beautiful Soup官方下载地址
羊羽shine
2019/05/28
5330
Python爬虫图片:从入门到精通
在数字化时代,图片作为信息传递的重要媒介之一,其获取和处理变得越来越重要。Python作为一种功能强大且易于学习的编程语言,非常适合用来编写爬虫程序,帮助我们自动化地从互联网上获取图片资源。本文将从基础到高级,详细介绍如何使用Python编写图片爬虫。
正在走向自律
2024/12/18
3310
Python爬虫图片:从入门到精通
爬虫系列,(3),达盖尔图片抓取
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/152625.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/12
3.8K0
【python爬虫 2】BeautifulSoup快速抓取网站图片
学习,最重要的是要了解它,并且使用它,正所谓,学以致用、本文,我们将来介绍,BeautifulSoup模块的使用方法,以及注意点,帮助大家快速了解和学习BeautifulSoup模块。有兴趣了解爬虫的小伙伴们,赶快学起来吧。
大家一起学编程
2022/01/25
1.4K0
【python爬虫 2】BeautifulSoup快速抓取网站图片
Python爬虫示例:下载图片和视频(带注释)
以下是一个简单的Python爬虫示例,用于从网页中爬取图片和视频内容。该代码旨在帮助用户理解如何使用Python进行网络爬虫操作,特别是在下载图片和视频文件时的基本方法。
Lethehong
2025/02/28
1460
Python爬虫示例:下载图片和视频(带注释)
Python实例| 利用python编写一段网站图片爬取代码
为了编写一个功能强大的爬虫,我们需要使用一些Python库,如requests、BeautifulSoup、Scrapy等。以下是一个简单的例子,演示如何使用这些库来爬取网页上的图片。
梦溪
2023/11/20
3000
Python实例| 利用python编写一段网站图片爬取代码
用python下载文件的若干种方法汇总
在日常科研或者工作中,我们免不了要批量从网上下载一些资料。要是手工一个个去下载,浪费时间又让鼠标折寿,好不容易点完了发现手指都麻木了。
MeteoAI
2019/07/24
14.9K0
Python爬虫 - 抓取divnil动漫妹子图
这链接还是比较好获取的,直接 F12 审核元素,或者右键查看代码,手机上chrome和firefox在url前面加上 "view-source"
sergiojune
2018/12/27
6910
Python爬虫 - 抓取divnil动漫妹子图
python爬虫beautifulsoup4系列3
前言 本篇手把手教大家如何爬取网站上的图片,并保存到本地电脑 一、目标网站 1.随便打开一个风景图的网站:http://699pic.com/sousuo-218808-13-1.html 2
上海-悠悠
2018/04/08
6540
python爬虫beautifulsoup4系列3
Python爬取美女图片 爬虫基础
作为一个考研狗,每天除了日复一日的复习外,偶尔也想给自己寻找一些生活的小乐趣,今天突然想到了自己曾经稍微接触的爬虫,想看看可以爬取些图片放到电脑上,就花了些时间改了改之前的爬虫代码,爬取了一部分照片先量一下战绩吧。照片不多但也算是自己的一次爬虫小经验。
全栈程序员站长
2022/09/13
6840
Requests与BeautifulSoup:高效解析网页并下载资源
在Python的众多网络爬虫框架中,Requests和BeautifulSoup因其简洁易用和强大的功能而脱颖而出。Requests是一个简单易用的HTTP库,支持多种HTTP请求方式,能够轻松地发送请求并获取网页内容。而BeautifulSoup则专注于HTML和XML文档的解析,能够快速提取网页中的关键信息。两者的结合,使得开发者可以高效地完成从网页抓取到数据提取的全过程。
小白学大数据
2025/03/03
850
用Dispatch库的爬虫程序爬取图片网站
想用Dispatch库来爬取图片网站。Dispatch可能是指某个特定的爬虫框架,或者用户可能打错了,比如实际上是指Scrapy?或者是一个其他的库?
华科云商小徐
2025/04/09
740
爬虫之汽车之家/抽屉新热榜/煎蛋网
汽车之家新闻: import requests from bs4 import BeautifulSoup import os # 模拟浏览器发请求 r1 = requests.get(url='https://www.autohome.com.cn/news/') # print(r1) #<class 'requests.models.Response'> r1.encoding = 'gbk' # 解决乱码问题 # print(r1.text)#打印网页文本 # print(r1.content)
超蛋lhy
2018/08/31
6400
图解爬虫,用几个最简单的例子带你入门Python爬虫
爬虫一直是Python的一大应用场景,差不多每门语言都可以写爬虫,但是程序员们却独爱Python。之所以偏爱Python就是因为她简洁的语法,我们使用Python可以很简单的写出一个爬虫程序。本篇博客将以Python语言,用几个非常简单的例子带大家入门Python爬虫。
ZackSock
2020/12/08
7470
图解爬虫,用几个最简单的例子带你入门Python爬虫
我的Python爬虫代码示例(一)
从链家网站爬虫石家庄符合条件的房源信息,并保存到文件,房源信息包括名称、建筑面积、总价、所在区域、套内面积等。其中所在区域、套内面积需要在详情页获取计算。
全栈程序员站长
2022/06/26
4620
Fu*k meizitu
首先通过 首页 的的所有分页面爬取所有的图片的首页链接 (写完之后发现有另一个界面 更容易爬 但是已经写完了就没有改了 这里放上链接 全部)
BORBER
2019/08/06
1.5K0
Fu*k meizitu
相关推荐
实战反爬虫
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验