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 相关文章推荐
Tornado Web服务器多进程启动的2个方法
Aug 04 Python
Python数据类型学习笔记
Jan 13 Python
Django小白教程之Django用户注册与登录
Apr 22 Python
Django ORM框架的定时任务如何使用详解
Oct 19 Python
Win10下Python3.7.3安装教程图解
Jul 08 Python
Python绘制二维曲线的日常应用详解
Dec 04 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
Jan 28 Python
keras打印loss对权重的导数方式
Jun 10 Python
django rest framework 自定义返回方式
Jul 12 Python
python如何写try语句
Jul 14 Python
Python如何将字符串转换为日期
Jul 31 Python
Python Selenium操作Cookie的实例方法
Feb 28 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
德劲1107的电路分析与打磨
2021/03/02 无线电
php empty()与isset()区别的详细介绍
2013/06/17 PHP
探讨Smarty中如何获取数组的长度以及smarty调用php函数的详解
2013/06/20 PHP
解决在Laravel 中处理OPTIONS请求的问题
2019/10/11 PHP
用js 让图片在 div或dl里 居中,底部对齐
2008/01/21 Javascript
javascript之可拖动的iframe效果代码
2008/08/01 Javascript
最好用的省市二级联动 原生js实现你值得拥有
2013/09/22 Javascript
你可能不知道的JavaScript的new Function()方法
2014/04/17 Javascript
JavaScript获得当前网页来源页面(即上一页)的方法
2015/04/03 Javascript
JS 实现倒计时数字时钟效果【附实例代码】
2016/03/30 Javascript
Bootstrap 布局组件(全)
2016/07/18 Javascript
微信小程序 Flex布局详解
2016/10/09 Javascript
如何使用headjs来管理和异步加载js
2016/11/29 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
vue-cli+webpack记事本项目创建
2017/04/01 Javascript
微信小程序中的onLoad详解及简单实例
2017/04/05 Javascript
微信小程序多张图片上传功能
2017/06/07 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
Spring Boot/VUE中路由传递参数的实现代码
2018/03/02 Javascript
一个小时快速搭建微信小程序的方法步骤
2019/04/15 Javascript
node中IO以及定时器优先级详解
2019/05/10 Javascript
vue解决花括号数据绑定不成功的问题
2019/10/30 Javascript
[06:24]DOTA2亚洲邀请赛小组赛第三日 TOP10精彩集锦
2015/02/01 DOTA
Python读csv文件去掉一列后再写入新的文件实例
2017/12/28 Python
Python使用matplotlib的pie函数绘制饼状图功能示例
2018/01/08 Python
Python 3.x基于Xml数据的Http请求方法
2018/12/28 Python
numpy concatenate数组拼接方法示例介绍
2019/05/27 Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
2020/07/14 Python
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
2020/11/22 Python
termux中matplotlib无法显示中文问题的解决方法
2021/01/11 Python
喜诗官方在线巧克力店:See’s Candies
2017/01/01 全球购物
飞利浦美国官网:Philips美国
2020/02/28 全球购物
构造方法和其他方法的区别?怎么调用父类的构造方法
2013/09/22 面试题
市场开发与营销专业求职信范文
2014/05/01 职场文书
2014年药店店长工作总结
2014/11/17 职场文书
JS不要再到处使用绝对等于运算符了
2021/04/30 Javascript