编写各种统计类型的函数
1、创建被引用文件:excel_page.py文件,内容如下图,excel表格中要有索引列,自行添加,此处的索引列名称为index

import xlrd
from collections import defaultdict, Counterclass ExcelData:# 指定excel文件位置及索引列的名字def __init__(self, xlsx_path, index_col='index'):workbook = xlrd.open_workbook(xlsx_path)self.worksheet = workbook.sheet_by_index(0)self.nrows = self.worksheet.nrowsself.ncols = self.worksheet.ncolsself.index_col = index_col# 返回对应列的数据为listdef get_col_by_name(self, col_name):try:index = self.worksheet.row_values(0).index(col_name)except BaseException:return None# 返回列list,去除列名return self.worksheet.col_values(index)[1:]# 对指定的列进行数据计数及统计def col_count(self, col_name):col_values = self.get_col_by_name(col_name)if not col_values:r = Noneelse:r = Counter(col_values)dict_r = dict(r)list_r = list(r)return r, sum(dict_r.values()), len(list_r)# 对固定的列的值求和(当数据达到5万多条时,性能有待改进,1万左右的数据还可以接受)def index_col_sum(self, col_name):s = defaultdict(float)for i in range(self.nrows - 1):# 字典求和s[self.get_col_by_name(self.index_col)[i]] += float(self.get_col_by_name(col_name)[i])return s, round(sum(s.values()), 2)

备注:mac版 excel 中存在大量数据时,添加索引列可以通过 开始 -> 填充 -> 系列 ->输入起始值和终止值,确定即可

2、创建运行文件:excel.py,并引用刚刚的自定义库

# -*-coding:utf-8 -*-
# @Time :2021/6/21 10:24 AM
# @Author :lixiaoyan
# @File:excel.pyfrom PageObjects.excel_page import *# 打开指定路径中的xls文件,得到book对象
xlsx_file = "/Users/lixiaoyan/Downloads/2020全路网.xlsx"
excel = ExcelData(xlsx_file)# 页面元素: 1、管养单位数     2、路段总数   3、行政区划分数
# col_name: 1、管养单位名称   2、路段代码   3、路段所在行政区域
col_count = excel.col_count('管养单位名称')
print(col_count)

最终输出结果如下:

python对5万多行的excel进行数据统计相关推荐

  1. Python按行打乱Excel表格数据

    因做数学建模比赛,需要打乱训练数据,于是用python写了个简单的小程序,作用就是按行打乱Excel表格. 先说一下需要使用的第三方库openpyxl Openpyxl是一个用于读写Excel 201 ...

  2. 实战 | 用Python爬取《云南虫谷》3.6万条评论,并做数据统计可视化展示分析,好看!...

    最近鬼吹灯系列网剧<云南虫谷>上线,作为鬼吹灯系列作品,承接上部<龙岭迷窟>内容,且还是铁三角原班人马主演,网友直呼非常好看! 今天,我们就用Python爬取目前全部剧集的评论 ...

  3. python表格多列合并_python 合并excel表格数据-如何用python从excel中同时提取两个列的数据,并生成dict(用xlrd)...

    用Python导出工程文件两个子页里的数据成为两个excel表格,但我想把它合并成个一个excel表格的两个sheet 可以采用一些操作Excel块去实现,比如xlrd.xlwt.openpyxl.x ...

  4. 实战|用Python爬取《云南虫谷》3.6万条评论,并做数据统计可视化展示分析,好看!

    大家好,我是才哥. 最近鬼吹灯系列网剧<云南虫谷>上线,作为鬼吹灯系列作品,承接上部<龙岭迷窟>内容,且还是铁三角原班人马主演,网友直呼非常好看! 今天,我们就用Python爬 ...

  5. python自动化表格截图_python自动化操作——excel刷新数据并截图发送微信

    1 importos2 importwin32gui, win32api, win32con, win32com3 from win32com.client importDispatch4 from ...

  6. python读取csv某些行_【Python】Python 读取csv的某行或某列数据

    站长用Python写了一个可以提取csv任一列的代码,欢迎使用. Github链接 csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格: 就可以 ...

  7. Python+pywin32批量读取带密码的Excel文件数据导出为CSV文件

    好消息:"Python小屋"编程比赛正式开始 推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清华大学出版社, ...

  8. python 笔记 将一个log文件转换成excel提取数据保存

    a = [x + 2 if x%2==0 else x -5 for x in range(1,50)] print(a)b = [x**2 for x in range(1,50) if x % 2 ...

  9. PYTHON编程导论群【提问与解惑】数据统计

    第一周 # 第一周 import matplotlib.pyplot as plt import seaborn as sns plt.rcParams['font.family'] = ['SimH ...

  10. python读取20万数据Excel文件+拆分数据

    python读取20万数据Excel文件 使用普通的pandas读取Excel,再结合xlrd读取,可能会读取的Excel数据会不全,最多只能读取到65535+行的数,如果读取超大excel数据时就读 ...

最新文章

  1. linux创建ftp指定目录命令行,Linux-命令行建立FTP
  2. 算法设计与分析 Fibonacci数列问题的词典法(动态规划:词典)
  3. 了解在HCI部署VDI的优势
  4. st-link和jlink调试stm32接线注意事项
  5. jsp设置背景图片并使得图片扩大到整个屏幕
  6. ansible register 用法
  7. linux显示隐藏分区,找到了linux分区顺序错乱修复方法
  8. SpringBoot高级-消息-AmqpAdmin管理组件的使用
  9. 分析一个BO上创建的extension field detail
  10. echo回声不能用了_已懂得用电子分频器,为何不继续加个效果器让音响效果更好?...
  11. 详解4种经典的限流算法
  12. 【Git】Git兼容GitHub和Gitee的问题与对策
  13. 2020年中国标准化发展现状分析,数字化为标准化领域带来新挑战「图」
  14. MySQL+Navicat安装教程
  15. 人民日报申论范文:“传统文化”怎么写?
  16. MTK平台修改Bootloader源代码,让Android设备一通电就自动开机
  17. 哪些东西做引流产品比较好?哪些商品是每天比较受欢迎的?
  18. 一加 Ace 竞速版什么时候发布 一加 Ace 竞速版配置怎么样
  19. 结合python使用ffmpeg将批量ts文件合成mp4。
  20. 基于springboot校园志愿者管理系统设计与实现的源码+文档

热门文章

  1. 华盛顿大学计算机专业gpa,华盛顿大学计算机专业基本信息全盘点 学习来这里就对了...
  2. if 语句嵌套注意事项1
  3. SProject - 02.iPad生产力工具——Blink Shell移动设备随时随地写代码
  4. c语言里的pow函数(好理解,易懂)
  5. P15 实战:Kaggle房价预测
  6. paypal php 退款,PayPal的Restful-API方式退款、WEB支付、回调
  7. 1400——507B、1370C、1363B、1324D、1365C、1374D
  8. 从六个方面讲解抢购软件需要具备的条件
  9. python元组操作_python元组操作
  10. 中国农业银行研发中心面试经历分享