0
点赞
收藏
分享

微信扫一扫

pandas库之groupby方法

开源分享 2022-09-13 阅读 67


pandas库之groupby方法

groupby就是对指定的索引进行分类
1、统计词频代码如下
首先对“交易地点”进行分类,之后的size()统计各类的出现次数,再sort_values进行降序排序

import pandas as pd 
import numpy as np
text=pd.DataFrame(pd.read_csv("data.txt",sep=";",encoding="gb18030"))
result=text.groupby("交易地点").size().sort_values(ascending=False)
print(result.head())

文件内容如下
交易地点;交易时间;交易金额;余额;学工号 江西师范大学
;2017/09/01 00:00:06.000;-100;100;1fc2320f2d4553be6510128b9bbefcb5
江西师范大学 ;2017/09/01
00:05:31.000;-300;300;1f8ac4bc490f59dddb0fa1e590aa12e2 江西师范大学
;2017/09/01 00:05:38.000;-300;300;ba25981f7b8af0e10f49951167e97167
江西师范大学 ;2017/09/01
00:06:20.000;-100;100;348d7c2b5932fe29e0707148dd61b2ab 江西师范大学
;2017/09/01 00:09:32.000;-500;500;32245e7edf53bed27443ae3685f82407
江西师范大学 ;2017/09/01
00:16:33.000;-150;150;b6161781ed66639f4c03f1386e16f953 江西师范大学
;2017/09/01 00:45:26.000;-200;200;ef09d5461c78738082fef32371d7582f
江西师范大学 ;2017/09/01
01:00:50.000;-200;200;5d403259bde907f34b9d199396179f5f 江西师范大学
;2017/09/01 01:04:39.000;-100;100;a1431c127fa1cbe94378be6a4d778d0c
5食堂5号机 ;2017/09/01
06:17:04.000;3.5;142.04;a75343ec75427caf2d30da7bc7513067 5食堂摊位17
;2017/09/01 06:17:37.000;1;95.58;834b46d0e273d27f39b7c8edaa5ffba2
青山湖-六食堂 ;2017/09/01
06:18:21.000;1;89.55;8a9f62736d0658fc5186ae43b4cd0607

输出结果:

pandas库之groupby方法_f5

2、对索引分类求和再排序
找出支出最少的学生,先多索引学号分类,再对交易金额求和,再逆序排序输出
学号是一串无规律的字符是因为经过哈希后的结果

import pandas as pd 
import numpy as np
text=pd.DataFrame(pd.read_csv("data.txt",sep=";",encoding="gb18030"))
person=text[(text["交易金额"]<0)] //找出交易金额为负,即支出的学生
result=person.groupby("学工号")["交易金额"].sum().sort_values(ascending=False)
print(result.head(10))

pandas库之groupby方法_2d_02


举报

相关推荐

0 条评论