预处理算法_12_分组聚合
#!/usr/bin/env python# -*- coding:utf-8 -*-# <editable>def execute():# <editable>'''载入模块'''import pandas as pdfrom sqlalchemy import create_engine'''连接数据库'''engine = create_engine('mysql+pymysql://root:123123qwe@127.0.0.1:3306/analysis')'''选择目标数据'''params = {"features": "score as fea","label": 'score',"method": "count",}inputs = {"table": 'test'}sql = 'select ' + params['features'] + ',' + params['label'] + ' from ' + inputs['table']data_in = pd.read_sql_query(sql, engine)data_in = data_in.fillna(float(20))print(data_in)'''分组聚合用法:obj.groupby(‘key’)obj.groupby([‘key1’,’key2’])'''b = params['label'].split(',')if params['method'] == 'count':data_out = data_in.groupby(b).count().reset_index()elif params['method'] == 'max':data_out = data_in.groupby(b).max().reset_index()elif params['method'] == 'mean':data_out = data_in.groupby(b).mean().reset_index()elif params['method'] == 'median':data_out = data_in.groupby(b).median().reset_index()elif params['method'] == 'size':data_out = data_in.groupby(b).size().reset_index()elif params['method'] == 'min':data_out = data_in.groupby(b).min().reset_index()elif params['method'] == 'std':data_out = data_in.groupby(b).std().reset_index()else:data_out = data_in.groupby(b).sum().reset_index()'''将结果写出'''print(data_out)'''数据示例fea score0 80.080.01 20.020.02 20.020.035.05.044.04.05 20.020.0score fea04.0115.01220.03380.01'''# </editable>if __name__ == '__main__':execute()
作者:沐禹辰
出处:http://www.cnblogs.com/renfanzi/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
出处:http://www.cnblogs.com/renfanzi/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
作者:我当道士那儿些年
来源链接:https://www.cnblogs.com/renfanzi/p/14476680.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。