Python 处理Excel内的数据

简介: Python 处理Excel内的数据

一)案例一介绍

现在有一匹电商产品跟当日销量的数据,如下,总共有上万笔的数据,现在需要统计每个品牌当日的销售量,比如美宝莲今天总共卖出了多少的商品,另外需要统计每个品牌下面的每个子品类当日销售量(品类可分为口红、睫毛膏、粉底等),比如卡姿兰口红卖了多少、眉笔卖了多少4adc138d81c07132147700bf07445c21.png


首先是要做出关键字码表,如下,这些是透过电商常用的产品称呼和观察发现的,需要对商品名称有一定的了解,比如欧莱雅的洁面膏其实就是洗面奶,

832ca8d8300d780b1da31eda5fc0800a.png


后面就是建立一个list,里面包含这些子品类,用这些关键字和品牌名称在商品列表逐一做匹配,比如商品里有“卡姿兰”又有“口红”的,再将符合的商品销售数量累加,输出至excel里,就可以完成统计,代码如下

import xlrd
import xlwt
readbook = xlrd.open_workbook(r'brand.xlsx')
sheet = readbook.sheet_by_index(0)
cols1=sheet.col_values(0)
cols2=sheet.col_values(1)
workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('result')
#建立子品类清单
items = ['眉笔','口红','眉粉','眼线笔','睫毛膏','粉饼','唇彩','散粉','眼影','唇釉','腮红','BB霜','粉底液','卸妆水','隔离霜','面霜','香水']
k = -1
b = 0 #b是记录总数
for item in items:
    a = 0 #a是某个子品类的数目
    array = []
    i = -1
    k = k+1
    for col in cols1:
        i = i + 1
     if  (item in col) and ('卡姿兰' in col): #商品名称里包含list里面的子品类和卡姿兰
            array.append(i)
    for n in array:
        a = a+ cols2[n]
    print(item)
    print(a)
    b = b+a
    worksheet.write(k,0,item)
    worksheet.write(k,1,a)
worksheet.write(k+1,0,'总数')
worksheet.write(k+1,1,b)
workbook.save('result.xls')  
——————


最后将输出的结果做图展示


ed2ed7bfab2e8d580af31dc5badddd81.png


(二)案例二介绍

在一个项目中我们需要对用户的终端机器进行统计,可是接口传回的数据如下图,同样是IPhone却有上万种写法,除了IPhone外,其他的安卓手机像是华为、OPPO、VIVO、小米等都有类似的情况,现在需要将这些分散的数据识别出,并加以统计




0ed4b58e3e24cbc5d24052d522653647.png


流程为:

1、用关键字对表内的内容进行查找,将包含关键字的行记录。

2、将包含关键字行第二列的数据进行加成,并且统计

3、输出到新的文档里

首先我们需要先制作一个关键字码表,如下图,我们将4大安卓机外的安卓机合计到安卓里面


28f59ca8a3cc2cccef078703bca785db.png


接着,用xlrd读取excel,用码表内的关键字跟第一列的数据进行匹配,符合匹配的将第二列的数字加总,最后用xlwt输出到excel文件里,实现代码如下

import xlrd
import xlwt
readbook = xlrd.open_workbook(r'phone.xlsx')
sheet = readbook.sheet_by_index(0)
cols1=sheet.col_values(0)
cols2=sheet.col_values(1)
i = -1
a = 0 #记录数目
array = []
keywords = ['iphone', 'iPhone', '苹果', 'Iphone', 'iOS']
for col in cols1:
    i = i + 1
    for word in keywords: #匹配清单内的关键字
        if  word in col:
            array.append(i)
for n in array:
    a = a+ cols2[n]
print(a)
workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('test')
worksheet.write(1,1,a)
workbook.save('phone1.xls')
————————————————
版权声明:本文为CSDN博主「代码之路无极限」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44353800/article/details/129028047


最后用EXCEL作图,就可以完成用户数据统计



4ff16af427ae54e1ee58cfbdbce9f591.png










相关文章
|
2天前
|
Python
Python 自动化操作 Excel - 02 - xlwt
Python 自动化操作 Excel - 02 - xlwt
23 14
|
2天前
|
Python
Python 自动化操作 Excel - 03 - xlutils
Python 自动化操作 Excel - 03 - xlutils
17 13
|
6天前
|
数据处理 Python
Python 高级技巧:深入解析读取 Excel 文件的多种方法
在数据分析中,从 Excel 文件读取数据是常见需求。本文介绍了使用 Python 的三个库:`pandas`、`openpyxl` 和 `xlrd` 来高效处理 Excel 文件的方法。`pandas` 提供了简洁的接口,而 `openpyxl` 和 `xlrd` 则针对不同版本的 Excel 文件格式提供了详细的数据读取和处理功能。此外,还介绍了如何处理复杂格式(如合并单元格)和进行性能优化(如分块读取)。通过这些技巧,可以轻松应对各种 Excel 数据处理任务。
33 16
|
2天前
|
Python
Python 自动化操作 Excel - 01 - xlrd
Python 自动化操作 Excel - 01 - xlrd
15 9
|
1天前
|
IDE 开发工具 数据安全/隐私保护
Python编程--实现用户注册信息写入excel文件
Python编程--实现用户注册信息写入excel文件
|
2天前
|
Python
Python编程案例:同一工作簿不同表单特定数据添加到工作簿的另一表单里
Python编程案例:同一工作簿不同表单特定数据添加到工作簿的另一表单里
|
2天前
|
Python
你知道 Python 如何解压缩数据吗
你知道 Python 如何解压缩数据吗
9 1
|
9天前
|
数据采集 数据挖掘 数据处理
Python中实现简单爬虫并处理数据
【9月更文挑战第31天】本文将引导读者理解如何通过Python创建一个简单的网络爬虫,并展示如何处理爬取的数据。我们将讨论爬虫的基本原理、使用requests和BeautifulSoup库进行网页抓取的方法,以及如何使用pandas对数据进行清洗和分析。文章旨在为初学者提供一个易于理解的实践指南,帮助他们快速掌握网络数据抓取的基本技能。
20 3
|
23小时前
|
自然语言处理 搜索推荐 程序员
【Python】如何使用pip,安装第三方库和生成二维码、操作Excel
【Python】如何使用pip,安装第三方库和生成二维码、操作Excel
10 0
|
1天前
|
存储 算法 搜索推荐
算法进阶之路:Python 归并排序深度剖析,让数据排序变得艺术起来!
算法进阶之路:Python 归并排序深度剖析,让数据排序变得艺术起来!
6 0