python 实现分组求和与分组累加求和代码


Posted in Python onMay 18, 2020

我就废话不多说了,大家还是直接看代码吧!

# -*- encoding=utf-8 -*-
import pandas as pd
data=['abc','abc','abc','asc','ase','ase','ase']
num=[1,2,2,1,2,1,2]
df1=pd.DataFrame({'name':data,'num':num})
print(df1)

df1['mmm']=df1['num']
df2=df1.groupby(['name', 'num'], as_index=False).count()
print(df2)
df2.sort_values(['name', 'num'], ascending=[1, 1], inplace=True)
print(df2)
df2['sum']=df2.groupby(['name'])['mmm'].cumsum()
print(df2)
kk=df2.groupby(['name'],as_index=False)['num'].sum()
print(kk)
df3 = pd.merge(df2, kk, on='name', how='left',)
print(df3)
df3['ratio']=df3['sum']/df3['num_y']
df3.columns = ['name', 'num', 'mmm', 'sum','numsum','ratio']
print(df3)
df4=df3.groupby(['mmm'],as_index=False)['ratio'].mean()

print(df4)

运行:

name num
0 abc  1
1 abc  2
2 abc  2
3 asc  1
4 ase  2
5 ase  1
6 ase  2
 name num mmm
0 abc  1  1
1 abc  2  2
2 asc  1  1
3 ase  1  1
4 ase  2  2
 name num mmm
0 abc  1  1
1 abc  2  2
2 asc  1  1
3 ase  1  1
4 ase  2  2
 name num mmm sum
0 abc  1  1  1
1 abc  2  2  3
2 asc  1  1  1
3 ase  1  1  1
4 ase  2  2  3
 name num
0 abc  3
1 asc  1
2 ase  3
 name num_x mmm sum num_y
0 abc   1  1  1   3
1 abc   2  2  3   3
2 asc   1  1  1   1
3 ase   1  1  1   3
4 ase   2  2  3   3
 name num mmm sum numsum   ratio
0 abc  1  1  1    3 0.333333
1 abc  2  2  3    3 1.000000
2 asc  1  1  1    1 1.000000
3 ase  1  1  1    3 0.333333
4 ase  2  2  3    3 1.000000
  mmm   ratio
0  1 0.555556
1  2 1.000000

Process finished with exit code 0

补充知识:python项目篇-对符合条件的某个字段进行求和,聚合函数annotate(),aggregate()函数

对符合条件的某个字段求和

需求是,计算每日的收入和

1、

new_dayincome = request.POST.get("dayincome_time", None)

    # total_income = models.bathAccount.objects.filter(dayBath=new_dayincome).aggregate(nums=Sum('priceBath'))
    total_income = models.bathAccount.objects.values('priceBath').annotate(nums=Sum('priceBath')).filter(dayBath=new_dayincome)
    print("total_income",total_income[0]['nums'])

输出结果:total_income 132

2、

from django.db.models import Sum,Count
new_dayincome = request.POST.get("dayincome_time", None)

    total_income = models.bathAccount.objects.filter(dayBath=new_dayincome).aggregate(nums=Sum('priceBath'))
    print("total_income",total_income['nums'])

输出结果:total_income 572

第二种输出的是正确的数字

以上这篇python 实现分组求和与分组累加求和代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python正则表达式的使用范例详解
Aug 08 Python
举例讲解Python的lambda语句声明匿名函数的用法
Jul 01 Python
解决Django模板无法使用perms变量问题的方法
Sep 10 Python
python3结合openpyxl库实现excel操作的实例代码
Sep 11 Python
使用EduBlock轻松学习Python编程
Oct 08 Python
对python遍历文件夹中的所有jpg文件的实例详解
Dec 08 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
Jan 15 Python
Python 动态变量名定义与调用方法
Feb 09 Python
Python实现一个简单的毕业生信息管理系统的示例代码
Jun 08 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
Jun 18 Python
keras分类模型中的输入数据与标签的维度实例
Jul 03 Python
Python的信号库Blinker用法详解
Dec 31 Python
Django ORM实现按天获取数据去重求和例子
May 18 #Python
如何实现更换Jupyter Notebook内核Python版本
May 18 #Python
python mysql自增字段AUTO_INCREMENT值的修改方式
May 18 #Python
Pycharm安装并配置jupyter notebook的实现
May 18 #Python
Django中的AutoField字段使用
May 18 #Python
jupyter notebook运行命令显示[*](解决办法)
May 18 #Python
jupyter notebook的安装与使用详解
May 18 #Python
You might like
PHP正确解析UTF-8字符串技巧应用
2012/11/07 PHP
php 获取页面中指定内容的实现类
2014/01/23 PHP
php防止网站被攻击的应急代码
2015/10/21 PHP
php pdo操作数据库示例
2017/03/10 PHP
Thinkphp开发--集成极光推送
2017/09/15 PHP
PHP使用HTML5 FileApi实现Ajax上传文件功能示例
2019/07/01 PHP
jQuery使用手册之 事件处理
2007/03/24 Javascript
javascript断点调试心得分享
2016/04/23 Javascript
JS 面向对象之继承---多种组合继承详解
2016/07/10 Javascript
js实现文字选中分享功能
2017/01/25 Javascript
three.js实现3D视野缩放效果
2017/11/16 Javascript
js和jQuery以及easyui实现对下拉框的指定赋值方法
2018/01/23 jQuery
js循环map 获取所有的key和value的实现代码(json)
2018/05/09 Javascript
React styled-components设置组件属性的方法
2018/08/07 Javascript
手淘flexible.js框架使用和源代码讲解小结
2018/10/15 Javascript
解决百度Echarts图表坐标轴越界的方法
2018/10/17 Javascript
原生JS实现列表内容自动向上滚动效果
2019/05/22 Javascript
JavaScript实现省市联动效果
2019/11/22 Javascript
TensorFlow.js 微信小程序插件开始支持模型缓存的方法
2020/02/21 Javascript
[01:46]TI4西雅图DOTA2前线报道 中国选手抱团调时差
2014/07/08 DOTA
[01:31:22]Ti4 循环赛第四日附加赛LGD vs Mouz
2014/07/13 DOTA
python操作xml文件示例
2014/04/07 Python
Python3.2中的字符串函数学习总结
2015/04/23 Python
使用python telnetlib批量备份交换机配置的方法
2019/07/25 Python
Python获取时间戳代码实例
2019/09/24 Python
基于python检查矩阵计算结果
2020/05/21 Python
史泰博(Staples)中国官方网站:办公用品一站式采购
2016/09/05 全球购物
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
董事长秘书岗位职责
2013/11/29 职场文书
餐饮加盟计划书
2014/01/10 职场文书
幼儿教师师德承诺书
2014/05/23 职场文书
分公司总经理岗位职责
2014/07/30 职场文书
同学聚会开幕词
2019/04/02 职场文书
Python pandas读取CSV文件的注意事项(适合新手)
2021/06/20 Python
纯html+css实现打字效果
2021/08/02 HTML / CSS
React自定义hook的方法
2022/06/25 Javascript