Python数据分析之groupby语法糖对分组进行迭代语法糖一:选取一个或多个列

对于dataframe的groupby聚合函数来说,我们适当了解下语法糖,会对数据分析起到事半功倍的效果。

对分组进行迭代

首先看下各字段的类型

import numpy as np
import pandas as pd
import pymysql
conn = pymysql.connect(host='localhost', user='root', passwd='123456', db='test', port=3306, charset='utf8')
jianshu = pd.read_sql('select * from jianshu1',conn)
jianshu.dtypes

可以看出,view这些字段是整数类型的数据,但这里是object数据,所以我们需要进行数据类型的修改,以view为例。

jianshu['view'] = jianshu['view'].astype('int64')
jianshu.dtypes

把user列作为索引。

jianshu.set_index('user',inplace=True)
jianshu

通过分组后的数据类型为groupby对象,可进行迭代。

jianshu.groupby(jianshu.index)
for name,group in jianshu.groupby(jianshu.index):
    print(name,group)

语法糖一:选取一个或多个列

jianshu.groupby(jianshu.index)[['view']].sum()

语法糖二:数据聚合 通过aggregate或者agg方法

jianshu.groupby(jianshu.index)[['view']].agg(['mean','sum'])

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏一个会写诗的程序员的博客

Shell 极简教程Hello World变量函数运算符字符串数组for 循环if elseShell test 命令

注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:

1091
来自专栏西枫里博客

Python学习笔记九(变量作用域及内置函数和闭包函数)

在上次的学习中,初步认识了Python的自定义函数方式及变量参数。那么编程中的局部变量和全局变量应该是大多数语言的标配。Python中如果定义局部变量和全局变量...

832
来自专栏cs

Spring的bean的属性注入

bean的属性注入3中方式。 1.0 接口注入。 2.0 构造函数注入。 3.0 setter方法的注入。

2414
来自专栏爱撒谎的男孩

Spring依赖注入

4487
来自专栏遊俠扎彪

C语言C99标准中的变长数组(VLA)

长期以来,我都很自然的认为定义和声明数组时,数组大小必须是一个常量表达式,因为刚学编程的时候在这个上面翻过好多次语法错误。那个时候大致会写如下的代码:

4229
来自专栏我和PYTHON有个约会

13.1 函数中的变量

在函数中,我们可以看到也进行了变量的使用,那函数中的变量和函数外的变量到底有什么区别呢?

742
来自专栏linux运维学习

linux学习第六十四篇:Shell脚本中的逻辑判断,文件目录属性判断, if特殊用法,case判断

Shell脚本中的逻辑判断 格式1:if 条件 ; then 语句; fi 格式2:if 条件; then 语句; else 语句; fi 格式3:if …; ...

3216
来自专栏C#

解析.NET对象的跨应用程序域访问(上篇)

   在目前的项目开发中,分布式开发已经逐渐成为主流。一个项目要是没有采用分布式架构,都不好意思跟别人说这是一个完整的项目。这句话虽然有些过激,但是随着人们对效...

2205
来自专栏好好学java的技术栈

java基础提升篇:synchronized同步块和volatile同步变量

862
来自专栏华仔的技术笔记

回顾retain,copy,assign

3608

扫码关注云+社区

领取腾讯云代金券