今天做了一个分类统计,感叹下pandas的强大,也记录下。

统计抽象下类似是这样的,第一列和第二列是事物,第三列表示时间段,第四列表示被访问的值,总计100多万行数据,需要统计aaa、bbb在各时段被访问的次数,a/b/c在各时段被访问的次数:

key1 key2 time_h value
aaa a 1 13
aaa b 3 14
aaa c 2 15
bbb a 2 16
bbb b 3 16
bbb c 4 15
aaa a 1 15
aaa b 4 14
aaa c 5 1
bbb a 2 1
bbb b 3 3
bbb c 1 15

作为一个小白,100多万行数据咋弄呢?pandas提供了一个十分强大的分类统计的 东东groupby。

下面上实际环境的代码和效果:

import pandas as p
from pandas import DataFramedata=p.read_table('e:\aaa.txt',names=['key1','key2','time_h','count'])
         key1  key2  time_h  count
0        2500  165A      12    292
1        2500  165B       2    129
2        2500  2FAC      20      2
3        2500  2FAD      10     51
4        2500  2FAE       0     19
5        2500   3E9       7    188
6        2500  4343      17    150
7        2500  4C0F      16     30
8        2500  52BF      23   1265
9        2500  5B6B      23     93
10       2500  6EA3      23    321
11       2500  7CBD      17   1414
12       2500  8ACB       0    299
13       2500  8B07       9    587
14       2500  8E6E      15    734
15       2500  951C      17   1525
16       2500  951D       7    721
17       2500  9955      22    496
18       2500  9956      12     46
19       2500  9D47      20    257
20       2500  A522      15      1
21       2500  B06F       6    609
22       2500  B0CB      16    287
23       2500  B502      16    647
24       2500  B503       6    456
25       2500  B731       3    406
26       2500  B85F      18    738
27       2500  BE1D      20    149
28       2500  C0FA      22    320
29       2500  C0FB      12    793
...       ...   ...     ...    ...
1355371  A656  C3FE      14    527
1355372  A656  C3FF       4     11
1355373  A656  C400      16    669
1355374  A656  C613       1      2
1355375  A656  CC8F       2     54
1355376  A656  CD9A       5     25
1355377  A656  CEAC      22    155
1355378  A656  CEAD      12    312
1355379  A656  CF10      17     95
1355380  A656  D40E      23      3
1355381  A656  D491      15     23
1355382  A656  D492       5      5
1355383  A656  DAE7      14    622
1355384  A656  E01B      19      7
1355385  A656  E01C       9     43
1355386  A656  E021       6     22
1355387  A656  E099      10    709
1355388  A656  E31D       5    166
1355389  A656  E37D      18    143
1355390  A656  E37E       8    212
1355391  A656  E695       9    187
1355392  A656  ED37      18     76
1355393  A656  ED38       8     28
1355394  A656  EE14      21     91
1355395  A656  EE15      11    116
1355396  A656  EE8D      19     26
1355397  A656  F2AF      16   1580
1355398  A656  F4F3      18    187
1355399  A656  F530       0    121
1355400  A656  FD6D      11    132[1355401 rows x 4 columns]
groupby_key1=data.groupby([data['key1'],data['time_h']])
<pre name="code" class="python">count_key1=groupby_key1.sum()
               count
key1 time_h
2500 0        1205361         969322         856773         844324         848365         922586        1214537        1712308        2159949        26136410       28732211       29820212       27523013       23228814       25710215       27939116       27895917       29899018       26521019       25070520       31111821       28848122       22687423       160231
2501 0        1259771        1089752        1053773         987284        1011665        110157
...              ...
A654 18       85731719       74518620       84485921       80586922       71312223       561586
A656 0        4925721        3537162        2918383        2568364        2340045        2395406        3393257        4955528        7152179        98491510      122600911      134123312      124405113      112271114      125921515      132842916      136817417      142281818      118017619       98008020      104576021       95376822       81658923       630840[1918 rows x 1 columns]
groupby_key2=data.groupby([data['key2'],data['time_h']])
count_key2=groupby_key2.sum()
               count
key2 time_h
0    0        4185291        2442112        1646903        1190294        1038415        1213296        2482657        5224168       10276579       178140110      231144411      244264912      180753413      140200214      200545515      231897016      245573417      248868418      215252519      132328020      149964421      126203922      101034923       620009
10   0            181            222            163            134            175            21
...              ...
FFEB 14            415            916            117            118            119            1
FFF  0           2291           1642           2613           1584           1335           1846           1607           2098           2149           21910          24211          23812          36213          17014          28515          22616          25517          25618          21219          21520          33021          24722          24123          276[1097254 rows x 1 columns]

几行几秒搞定问题!

好用的分类统计--Python相关推荐

  1. 宝塔 bt 蜘蛛统计数量汇总与分类统计 python

    宝塔会员的 网站统计里面看蜘蛛数量 不方便 当站点多的时候不方便,,蜘蛛多少那列不能排序,不能按多少排序 写了个代码 半自动统计 蜘蛛数量 当站点多的时候,只更新诱蜘蛛来的站点,没有蜘蛛的站点不显示! ...

  2. 透过Python 将接收邮件邮件进行分类统计

    工作的需要自行学习了Python的一些功能,将所学的经验在这里分享给大家 文章目录 目录 文章目录 前言 一.环境准备 二.使用步骤 1.引入库 2.读入数据 总结 前言 工作中我们可能会透过邮件,让 ...

  3. Python计算医疗数据训练集、测试集的对应的临床特征:训练集(测试集)的阴性和阳性的样本个数、连续变量的均值(标准差)以及训练测试集阳性阴性的p值、离散变量的分类统计、比率、训练测试集阳性阴性的p值

    Python使用pandas和scipy计算医疗数据训练集.测试集的对应的临床特征:训练集(测试集)的阴性和阳性的样本个数.连续变量的均值(标准差࿰

  4. Python花式编程:考试成绩分类统计(3种方法)

    封面图片:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情: ================ 问题描述: 已知某门课程的学生成 ...

  5. python对excel数据统计_python读取excel数据做分类统计

    #-*- coding:utf-8 -*- importxlrdfrom datetime importtimedeltadefread_excel(file_excel):#读excel并将需要的数 ...

  6. 分类统计字符—Python

    描述 用户输入一个字符串,分别统计其中小写字母.大写字母.数字.空格和其他字符的个数,并在一行内输出小写字母.大写字母.数字.空格和其他字符的个数. 输入格式 输入一个字符串‪‬‪‬‪‬‪‬‪‬‮‬‭ ...

  7. python导入xlsx文件-Python读取xlsx文件的实现方法

    脚本如下: from openpyxl import load_workbook workbook = load_workbook(u'/tmp/test.xlsx') #找到需要xlsx文件的位置 ...

  8. python实验七答案_Python实验报告七

    安徽工程大学Python程序设计 班级:物流192 姓名:唐家豪 学号:3190505234 成绩: 日期:2020/05/28 指导老师:修宇 [实验目的] 熟悉通过序列索引迭代执行循环:掌握元组. ...

  9. python异常处理_Python基础语法案例(Fibonacci):选择结构、循环结构、异常处理结构、代码优化...

    推荐图书: <Python程序设计基础(第2版)>,ISBN:9787302490562,董付国,清华大学出版社,第16次印刷,清华大学出版社2019年度畅销图书 图书购买链接(京东):配 ...

最新文章

  1. [React Native] 解析JSON文件
  2. 基于深度学习的多目标跟踪:从UMA Tracker出发谈谈SOT类MOT算法
  3. 配置SpringMVC框架
  4. 圆环和环形是一样的吗_Excel不知道还可以这样做圆环图
  5. PHP curl 参数详解
  6. 在线的SA 绘图工具-Mockups
  7. 802.11协议常用语缩写
  8. 如何用 Nginx 禁止国外 IP 访问网站 ?
  9. css3实现图片旋转木马效果
  10. Windows 11 安装 Matlab 2022a 保姆级教程
  11. 深度学习的归一化和反归一化
  12. 模拟调制—DSB信号及生物电信号特性测量分析实验报告
  13. 【FHQ Treap】洛谷P5055 【模板】可持久化文艺平衡树
  14. Java方法详解(基础)
  15. 单条视频播放3700w+,生鲜产品如何开启变现之路?
  16. 深入解析 DataGrid 过滤功能
  17. 关于SQL语句的例子
  18. 目标跟踪算法KCF原理详解
  19. Linux kill 强制关闭 进程
  20. linux进程调度之FIFO和RR策略

热门文章

  1. web前端就业怎么样
  2. 2021-11-26 WPF上位机 96-Modbus通信代码的封装
  3. 本地搭建 Bootlin elixir 查阅内核代码
  4. 学原油期货买什么书(怎么样买原油期货)
  5. 【06】【Tomcat】
  6. [美文]你懂得这些,才可能比别人更优秀!
  7. 火车到站时间接口 站到站列车信息检索
  8. 论文对图片与什么要求呢?
  9. 数据库进阶,数据库的索引,事物与存储引擎
  10. 模拟linux终端测试java,Linux 伪终端(pty)