文章目录

  • 一、实现思路
  • 二、实例分析
  • 三、编写代码
  • 四、写入文件

一、实现思路

读取文件–按列分组–获取对应行数据

二、实例分析

需求:按县统计人数,统计结果使用“省市县/区”描述,例如:

四川成都宜宾 20
湖南长沙天心区 10

原表格如下:

人名
四川 成都 宜宾 张旻1
四川 绵阳 三台 张旻2
浙江 宁波 北仑区 张旻3
浙江 宁波 海曙区 张旻4
湖南 长沙 天心区 张旻5
湖南 长沙 天心区 张旻6
四川 绵阳 三台 张旻7
四川 绵阳 三台 张旻8
四川 成都 崇州 张旻9
四川 成都 宜宾 张旻10
四川 成都 双流 张旻11
四川 成都 双流 张旻12
湖南 岳阳 平江 张旻13
湖南 岳阳 平江 张旻14
湖南 长沙 天心区 张旻15
湖南 长沙 天心区 张旻16
湖南 长沙 天心区 张旻17
浙江 宁波 海曙区 张旻18
浙江 宁波 海曙区 张旻19
浙江 宁波 北仑区 张旻20
浙江 宁波 北仑区 张旻21
湖南 长沙 天心区 张旻22
湖南 长沙 天心区 张旻23

三、编写代码

import pandas as pd
file_name = r'C:\Users\Administrator\Documents\tencent files\2528104776\filerecv\新建 Microsoft Excel 工作表.xlsx'
result = pd.read_excel(io = file_name,sheet_name=0)
t= result.groupby("县")
for  i,o in t:first = o.iloc[0][:-1][0] #一级行索引second = o.iloc[0][:-1][1] #二级行索引third = o.iloc[0][:-1][2] #三级行索引print(first,second,third)print("按县/区级 统计人数:%s\n"%(len(o)))

输出结果如下:

四川 绵阳 三台
按县/区级 统计人数:3浙江 宁波 北仑区
按县/区级 统计人数:3四川 成都 双流
按县/区级 统计人数:2湖南 长沙 天心区
按县/区级 统计人数:7四川 成都 宜宾
按县/区级 统计人数:2四川 成都 崇州
按县/区级 统计人数:1湖南 岳阳 平江
按县/区级 统计人数:2浙江 宁波 海曙区
按县/区级 统计人数:3PS C:\Python文件夹>

四、写入文件

统计工作虽然已经好 但是需要将上面统计信息进行文本处理并写入Excel

首先需要新建一个字典用于装数据

第二将数据写入字典

第三将字典转换为DataFrame 类型,并调换行列索引写入文件

import pandas as pd
file_name = r'C:\Users\Administrator\Documents\tencent files\2528104776\filerecv\新建 Microsoft Excel 工作表.xlsx'
result = pd.read_excel(io = file_name,sheet_name=0)
t= result.groupby("县")data = {}
for  i,o in t:first = o.iloc[0][:-1][0] #一级行索引second = o.iloc[0][:-1][1] #二级行索引third = o.iloc[0][:-1][2] #二级行索引data[first+second+third] = [len(o)]pd.DataFrame(data).T.to_excel('C:/Users/Administrator/Desktop/处理好的数据.xlsx')

注意:上述代码第11行写入字典的值必须是一个列表类型

写入文件后呈现结果:

按某一列统计重复数据,并获取对应行数据相关推荐

  1. Request —— 获取请求行数据 获取请求头数据 获取请求体数据

    1. request对象和response对象的原理     1. request和response对象是由服务器创建的.我们来使用它们     2. request对象是来获取请求消息,respon ...

  2. Request_获取请求行数据_方法介绍

    request功能:     1. 获取请求消息数据         1. 获取请求行数据             * GET /day14/demo1?name=zhangsan HTTP/1.1 ...

  3. V3.0element中table表格树形结构与懒加载通过接口获取展开行数据,并实现自动展开某行以及展开行数据删除,编辑,新增,展开行某些列不显示等功能

    1.获取列表后自动展开第一行,以及列表序号的显示 需要展开哪行,就赋值 expandsId 某行id 值就行了 2.展开某行时通过接口获取子行数据,一般需求是通过父行的id,来获取他的子行数据--lo ...

  4. 【pandas】将单元格中的多个数据拆分为多行数据(explode),以csv文件为源文件进行处理

    [pandas]将单元格中的多个数据拆分为多行数据(explode) 1.原始数据(test.csv) 2.需求 将"别名"."科目"这两列中带有多个数据的单元 ...

  5. 股票level2数据接口获取逐笔成交数据的过程

    描述:通过股票level2数据接口获取逐笔成交数据的过程 地点:https://gitee.com/l2gogogo 获取过程: /// <summary> /// 获取逐笔成交数据 // ...

  6. 【easyui】easyui datagrid加载成功之后选定并获取首行数据

    //加载成功之后,选定并获取首行数据 onLoadSuccess:function(data){ alert("grid加载成功");var rows=$('test').data ...

  7. mysql根据分隔符将一行数据拆分成多行数据

    mysql根据分隔符将一行数据拆分成多行数据 文章目录 mysql根据分隔符将一行数据拆分成多行数据 关键函数 原始数据 处理结果展示 三种方式,相同的原理 使用MySql库中的自增序列表 自建自增序 ...

  8. 取出datatable的某一行_jquery dataTable 获取某行数据

    jquery dataTable 获取某行数据 DataTable API table.row(rowSelector [,modifier]) 注table是dataTable的对象 该方法有两个默 ...

  9. MySQL中给数据表插入多行数据

    有时因为测试需求,需要给某数据表中插入多行数据,所以自己就琢磨了一下,该过程实现涉及到了MySQL存储过程,想详细了解的可看下这个博客:MySQL存储过程,以下是具体的实现过程: 1.先创建一个表: ...

最新文章

  1. sl中几个简单变量的获取
  2. 从源码分析DEARGUI之add_text_point
  3. 总结H3CNE学习过程和其他
  4. 【c++】29.设计模式总结
  5. 推荐大赛如何在一周时间内打进决赛
  6. 阐述:SIP协议是什么
  7. 单片机控制小风扇马达c语言,模拟风扇控制电路(单片机C程序设计)
  8. mysql必知必会第一节
  9. 27款经典网站设计必备的CSS框架
  10. 线上CPU100%?看看这篇是怎么排查的!
  11. MySQL-数据操作-增删改查
  12. (转)《Billions》第二季回归,现实中的SAC也回来了
  13. 惠普局域网共享打印机设置_已解决: hp1106局域网共享打印机共享 - 惠普支持社区 - 817337...
  14. 网页打开QQ链接,进行临时会话
  15. 关于找不到www.jetbrains.com的服务器IP地址
  16. git clone 报 “remote: The project you were looking for could not be found.”
  17. 软件逆向工程学习(一)
  18. 如何使用Mac的媒体键在DisplayPort,HDMI或Thunderbolt监视器上调整扬声器音量
  19. 创造习惯 — 如何科学地养成习惯
  20. iris web框架无法加载静态文件

热门文章

  1. ERROR: Could not build wheels for numpy which use PEP 517 and cannot be installed directly
  2. 计算机论文致谢词范文500字,论文致谢词范文500字(精选6篇)
  3. 计算机磁盘在线分区,电脑硬盘分区几个最好?你还把电脑硬盘分成C、D、E、F盘吗?...
  4. MySQL的MHA高可用配置及故障切换
  5. 关于母亲节的c语言程序设计教程课后答案,《我的母亲》习题及参考答案
  6. Magento 数据表结构 EAV模型详解
  7. c# 调整图片分辨率
  8. 显卡 1050Ti pytorch 安装
  9. turtle.write方法使用说明
  10. linux执行一个可执行文件,不同Linux系统下同一个可执行文件执行有关问题