Python 数据的累加与统计的示例代码


Posted in Python onAugust 03, 2020

问题

你需要处理一个很大的数据集并需要计算数据总和或其他统计量。

解决方案

对于任何涉及到统计、时间序列以及其他相关技术的数据分析问题,都可以考虑使用 Pandas库 。

为了让你先体验下,下面是一个使用Pandas来分析芝加哥城市的 老鼠和啮齿类动物数据库 的例子。 在我写这篇文章的时候,这个数据库是一个拥有大概74,000行数据的CSV文件。

>>> import pandas

>>> # Read a CSV file, skipping last line
>>> rats = pandas.read_csv('rats.csv', skip_footer=1)
>>> rats
<class 'pandas.core.frame.DataFrame'>
Int64Index: 74055 entries, 0 to 74054
Data columns:
Creation Date 74055 non-null values
Status 74055 non-null values
Completion Date 72154 non-null values
Service Request Number 74055 non-null values
Type of Service Request 74055 non-null values
Number of Premises Baited 65804 non-null values
Number of Premises with Garbage 65600 non-null values
Number of Premises with Rats 65752 non-null values
Current Activity 66041 non-null values
Most Recent Action 66023 non-null values
Street Address 74055 non-null values
ZIP Code 73584 non-null values
X Coordinate 74043 non-null values
Y Coordinate 74043 non-null values
Ward 74044 non-null values
Police District 74044 non-null values
Community Area 74044 non-null values
Latitude 74043 non-null values
Longitude 74043 non-null values
Location 74043 non-null values
dtypes: float64(11), object(9)

>>> # Investigate range of values for a certain field
>>> rats['Current Activity'].unique()
array([nan, Dispatch Crew, Request Sanitation Inspector], dtype=object)
>>> # Filter the data
>>> crew_dispatched = rats[rats['Current Activity'] == 'Dispatch Crew']
>>> len(crew_dispatched)
65676
>>>

>>> # Find 10 most rat-infested ZIP codes in Chicago
>>> crew_dispatched['ZIP Code'].value_counts()[:10]
60647 3837
60618 3530
60614 3284
60629 3251
60636 2801
60657 2465
60641 2238
60609 2206
60651 2152
60632 2071
>>>

>>> # Group by completion date
>>> dates = crew_dispatched.groupby('Completion Date')
<pandas.core.groupby.DataFrameGroupBy object at 0x10d0a2a10>
>>> len(dates)
472
>>>

>>> # Determine counts on each day
>>> date_counts = dates.size()
>>> date_counts[0:10]
Completion Date
01/03/2011 4
01/03/2012 125
01/04/2011 54
01/04/2012 38
01/05/2011 78
01/05/2012 100
01/06/2011 100
01/06/2012 58
01/07/2011 1
01/09/2012 12
>>>

>>> # Sort the counts
>>> date_counts.sort()
>>> date_counts[-10:]
Completion Date
10/12/2012 313
10/21/2011 314
09/20/2011 316
10/26/2011 319
02/22/2011 325
10/26/2012 333
03/17/2011 336
10/13/2011 378
10/14/2011 391
10/07/2011 457
>>>

嗯,看样子2011年10月7日对老鼠们来说是个很忙碌的日子啊!^_^

讨论

Pandas是一个拥有很多特性的大型函数库,我在这里不可能介绍完。 但是只要你需要去分析大型数据集合、对数据分组、计算各种统计量或其他类似任务的话,这个函数库真的值得你去看一看。

以上就是Python 数据的累加与统计的方法的详细内容,更多关于Python 数据的累加与统计的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python中利用sorted()函数排序的简单教程
Apr 27 Python
python django 访问静态文件出现404或500错误
Jan 20 Python
python并发编程之线程实例解析
Dec 27 Python
利用python实现微信头像加红色数字功能
Mar 26 Python
Python实现迭代时使用索引的方法示例
Jun 05 Python
python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)
Apr 18 Python
python实现抽奖小程序
Apr 15 Python
pytorch使用tensorboardX进行loss可视化实例
Feb 24 Python
基于plt.title无法显示中文的快速解决
May 16 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
May 22 Python
使用anaconda安装pytorch的实现步骤
Sep 03 Python
python实现数学模型(插值、拟合和微分方程)
Nov 13 Python
Python 爬虫性能相关总结
Aug 03 #Python
python接口自动化之ConfigParser配置文件的使用详解
Aug 03 #Python
Python 利用OpenCV给照片换底色的示例代码
Aug 03 #Python
Python3基于plotly模块保存图片表格
Aug 03 #Python
详解Python的爬虫框架 Scrapy
Aug 03 #Python
Python利用Faiss库实现ANN近邻搜索的方法详解
Aug 03 #Python
Python pexpect模块及shell脚本except原理解析
Aug 03 #Python
You might like
mysql中存储过程、函数的一些问题
2007/02/14 PHP
Laravel 之url参数,获取路由参数的例子
2019/10/21 PHP
PHP实现一个按钮点击上传多个图片操作示例
2020/01/23 PHP
Javascript &amp; DHTML 实例编程(教程)DOM基础和基本API
2007/06/02 Javascript
JavaScript DOM 学习第七章 表单的扩展
2010/02/19 Javascript
自己动手制作jquery插件之自动添加删除行的实现
2011/10/13 Javascript
jquery ready函数、css函数及text()使用示例
2013/09/27 Javascript
遍历DOM对象内的元素属性示例代码
2014/02/08 Javascript
jQuery中的$.ajax()方法应用
2014/05/06 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
JavaScript中字面量与函数的基本使用知识
2015/10/20 Javascript
Javascript实现图片轮播效果(二)图片序列节点的控制实现
2016/02/17 Javascript
jQuery实现点击按钮文字变成input框点击保存变成文字
2016/05/09 Javascript
jQuery日期范围选择器附源码下载
2017/05/23 jQuery
bootstrap实现二级下拉菜单效果
2017/11/23 Javascript
Vue 组件修改根实例的数据的方法
2019/04/02 Javascript
微信小程序后端(java)开发流程的详细步骤
2019/11/13 Javascript
javascript将16进制的字符串转换为10进制整数hex
2020/03/05 Javascript
[46:03]LGD vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[48:48]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
剖析Python的Twisted框架的核心特性
2016/05/25 Python
win7上python2.7连接mysql数据库的方法
2017/01/14 Python
python 接口测试response返回数据对比的方法
2018/02/11 Python
Win7 64位下python3.6.5安装配置图文教程
2020/10/27 Python
详解Python下ftp上传文件linux服务器
2018/06/21 Python
Python:Numpy 求平均向量的实例
2019/06/29 Python
python 动态调用函数实例解析
2019/10/21 Python
LightInTheBox西班牙站点:全球商品在线采购
2016/09/22 全球购物
JDO的含义
2012/11/17 面试题
HttpServlet类中的主要方法都有哪些?各自的作用是什么?
2014/03/16 面试题
给实习单位的感谢信
2014/02/01 职场文书
医生个人年度总结
2015/02/28 职场文书
毕业论文答辩开场白
2015/05/27 职场文书
Vue过滤器(filter)实现及应用场景详解
2021/06/15 Vue.js
浅谈Redis缓冲区机制
2022/06/05 Redis