首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pandas_Study02

首先,可以通过isnull 和 notnull 方法查看有哪些NaN值,这个方法返回的布尔值,指示该值是否是NaN值,结合sum 方法可以获取每值的数目以及总数。...也可以通过 count 方法得到每不为NaN值的数目。...# axis 行操作,how 原理同上 # 同时可以添加条件删除 print(df.dropna(axis = 1, thresh = 2)) # axis=1操作,thresh 指示这一列或行中有个或以上的非...NaN值,向后同理 # 在df 的e 这一列上操作,默认下行操作,向前填充数据,即取e中最近的一个不为NaN值来填充接下去的NaN值 df["e"].fillna(method = 'ffill',...简单的单列分组 # 单列进行分组 dg = df0.groupby("fruit") # 打印查看fruit分组后的每组组名,及详细信息 for n, g in dg: print "group_name

17610

别说了,GROUP BY 我都不会!

ROLL UP ROLL UP 搭配 GROUP BY 使用,可以为每一个分组返回一个小计行,为所有分组返回一个总计行。 直接看例子,我们有以下数据表,包含工厂,班组,数量。 ?...当向 ROLLUP 传入一列时,会得到一个总计行。...当向 ROLLUP 传递时,将会按照这进行分组,同时按照第一列分组结果返回小计行。我们同时传入工厂和部门看一下。...GROUPING GROUPING()函数只能配合 ROLLUP 和 CUBE 使用,GROUPING()接收一列,如果此列不为则返回0,如果为则返回1....有了GROUPING_ID,我们就可以使用 HAVING 字句来对查询结果进行过滤。选择GROUPING_ID=0的就表示 FACTORY,DEPARTMENT不为。 ?

43820
您找到你想要的搜索结果了吗?
是的
没有找到

Oracle 分组函数

DISTINCT|ALL] column|expression):返回表中满足条件的非空行记录数 --当前表中的总记录数 select count(*) from stu_class; --查询sclass这一列不为时的总记录数...)和DISTINCT(COLUMN)之外,其他所有分组函数都会忽略列表中的值,然后再进行计算 在分组函数中使用NVL函数可以使分组函数强制包含含有空值的记录 select avg(sscore) from...,其中GROUP BY子句指定要分组 SELECT [column,] group_function(column) FROM table [WHERE condition] [GROUP...,所有都必须包含在GROUP BY子句中 --按照班级分组后求每个班级的得分最高的值,如果想将sclass查出则需要在group by语句中指定其进行分组得到每班最大值 select sclass,...select sclass,sum(sscore) from stu_class group by sdept,sclass; 分组的GROUP BY子句 --按照多进行分组查询求平均值 select

40330

SQL数据库查询语句

的含义是对结果集中的重复行只选择一个,以保证行的唯一性(注意:强调的是“行”,而不是某一列)。...(2).count([all]|[distinct] 字段名) 功能:统计指定字段值不为的记录个数,字段的数据类型可以是text、image、ntext、uniqueidentifier之外的任何类型...例19:查询学生总数 select count(借书证号) as 总人数 from xs 说明: A.本例中由于“借书证号”字段值所有记录都不为,故这一统计结果即为总记录个数,即和count(...*)的统计结果一样; B.distinct表示:先消除指定字段取值重复的记录,然后再统计指定字段值不为的记录个数;而all 则表示所有指定字段值不为的全部记录都参加统计计数。...如:以下操作将会产生错误: select 借书证号,count(*) from xs (六):对查询结果分组: group by子句用于将查询结果表一列或多值进行分组值相等的为一组,

3.9K20

Pandas速查手册中文版

如果你想学习Pandas,建议先看个网站。...], ascending=[True,False]):先按col1升序排列,后col2降序排列数据 df.groupby(col):返回一个col进行分组的Groupby对象 df.groupby...([col1,col2]):返回一个进行分组的Groupby对象 df.groupby(col1)[col2]:返回col1进行分组后,col2的均值 df.pivot_table(index...):返回col1分组的所有的均值 data.apply(np.mean):对DataFrame中的每一列应用函数np.mean data.apply(np.max,axis=1):对DataFrame...df.corr():返回之间的相关系数 df.count():返回每一列中的非值的个数 df.max():返回每一列的最大值 df.min():返回每一列的最小值 df.median():返回每一列的中位数

12.1K92

python数据科学系列:pandas入门详细教程

、切片访问、通函数、广播机制等 series是带标签的一维数组,所以还可以看做是类字典结构:标签是key,取值是value;而dataframe则可以看做是嵌套字典结构,其中列名是key,每一列的series...切片形式访问时行进行查询,又区分数字切片和标签切片种情况:当输入数字索引切片时,类似于普通列表切片;当输入标签切片时,执行范围查询(即无需切片首末值存在于标签中),包含端标签结果,无匹配行时返回为...切片类型与索引类型不一致时,引发报错 loc/iloc,最为常用的种数据访问方法,其中loc标签值访问、iloc数字索引访问,均支持单值访问或切片查询。...count、value_counts,前者既适用于series也适用于dataframe,用于统计个数,实现忽略值后的计数;而value_counts则仅适用于series,执行分组统计,并默认频数高低执行降序排列...groupby,类比SQL中的group by功能,即按某一列或多执行分组

13.8K20

Oracle学习(四):组函数

组函数会自动滤,只统计不为 SQL> select count(*),count(comm) from emp; --结果不同,count(comm)只统计comm不为的个数 SQL> --可以在组函数中嵌套滤空函数...group by子句中 SQL> --包含在group by子句中的不必包含在select列表中 SQL> --部门,不同的职位统计平均工资 SQL> select deptno,job,avg(sal...) 2 from emp 3 group by deptno,job 4 order by 1 SQL> --group by多:先按照第一列分;如果第一列相同,再按照第二分 SQL...> --having:过滤分组 SQL> --查询平均工资大于2000的部门 SQL>select deptno,avg(sal) 2 from emp 3 group by deptno...先按照第一列分;如果第一列相同,再按照第二分 SQL> ed 已写入 file afiedt.buf 1 select deptno,job,avg(sal) 2 from emp

93620

学数据库还不会Select,SQL Select详解,单表查询完全解析?

细化聚集函数的作用对象 未对查询结果分组,聚集函数将作用于整个查询结果 对查询结果分组后,聚集函数将分别作用于每个组 作用对象是查询的中间结果表 指定的一列或多分组,值相等的为一组 合计函数...李四 29 王五 28 如果我们不加GROUP BY 会得到这样一个表 Customer Quantity 张三 88 李四 88 王五 88 张三 88 王五 88 当然GROUP BY也可以多个分组...FROM ; 选择全部查询: 当然我们可以,把所有的一列举,我们也可以使用SELECT * SELECT * FROM ; 举例: 还是BILL表 Customer Quantity...BY [ ASC|DESC ] ];--什么条件排序 其中目标表达式可以为: 算术表达式 字符串常量 函数 别名 例子: Students表 Name Birth 李勇 1999 刘晨...SELECT AVG(Grade) FROM SC WHERE Cno= ‘ 1 ’; 最大最小值 MAX() 函数和MIN()函数 MAX 函数返回一列中的最大值,MIN 函数返回一列中的最小值

94430

数据库SQL语言从入门到精通--Part 6--单表查询(快来PICK)

细化聚集函数的作用对象 未对查询结果分组,聚集函数将作用于整个查询结果 对查询结果分组后,聚集函数将分别作用于每个组 作用对象是查询的中间结果表 指定的一列或多分组,值相等的为一组 合计函数...李四 29 王五 28 如果我们不加GROUP BY 会得到这样一个表 Customer Quantity 张三 88 李四 88 王五 88 张三 88 王五 88 当然GROUP BY也可以多个分组...FROM ; 选择全部查询: 当然我们可以,把所有的一列举,我们也可以使用SELECT * SELECT * FROM ; 举例: 还是BILL表 Customer Quantity...BY [ ASC|DESC ] ];--什么条件排序 其中目标表达式可以为: 算术表达式 字符串常量 函数 别名 例子: Students表 Name Birth 李勇 1999 刘晨...SELECT AVG(Grade) FROM SC WHERE Cno= ‘ 1 ’; 最大最小值 MAX() 函数和MIN()函数 MAX 函数返回一列中的最大值,MIN 函数返回一列中的最小值

79010

pandas技巧4

,后col2降序排列数据 df.groupby(col) # 返回一个col进行分组的Groupby对象 df.groupby([col1,col2]) # 返回一个进行分组的Groupby...对象 df.groupby(col1)[col2].agg(mean) # 返回col1进行分组后,col2的均值,agg可以接受列表参数,agg([len,np.mean]) df.pivot_table...(index=col1, values=[col2,col3], aggfunc={col2:max,col3:[ma,min]}) # 创建一个col1进行分组,计算col2的最大值和col3的最大值...、最小值的数据透视表 df.groupby(col1).agg(np.mean) # 返回col1分组的所有的均值,支持df.groupby(col1).col2.agg(['min','max'...df.mean() # 返回所有的均值 df.corr() # 返回之间的相关系数 df.count() # 返回每一列中的非值的个数 df.max() # 返回每一列的最大值 df.min

3.4K20

最全面的Pandas的教程!没有之一!

分组统计 Pandas 的分组统计功能可以一列的内容对数据行进行分组,并对其应用统计函数,比如求和,平均数,中位数,标准差等等… 举例来说,用 .groupby() 方法,我们可以对下面这数据表...因为我们没有指定堆叠的方向,Pandas 默认行的方向堆叠,把每个表的索引顺序叠加。 如果你想要按的方向堆叠,那你需要传入 axis=1 参数: ? 注意,这里出现了一大堆值。...其中 left 参数代表放在左侧的 DataFrame,而 right 参数代表放在右边的 DataFrame;how='inner' 指的是当左右个 DataFrame 中存在不重合的 Key 时,...排序 如果想要将整个表一列的值进行排序,可以用 .sort_values() : ? 如上所示,表格变成 col2 的值从小到大排序。...,index 表示进行分组索引,而 columns 则表示最后结果将的数据进行分列。

25.8K64

Python pandas十分钟教程

统计某数据信息 以下是一些用来查看数据某一列信息的几个函数: df['Contour'].value_counts() : 返回计算中每个值出现次数。....unique():返回'Depth'中的唯一值 df.columns:返回所有的名称 选择数据 选择:如果只想选择一列,可以使用df['Group']....基本使用方法如下: df.loc[:,['Contour']]:选择'Contour'的所有数据。 其中单冒号:选择所有行。 在逗号的左侧,您可以指定所需的行,并在逗号的右侧指定。...Pandas中提供以下几种方式对数据进行分组。 下面的示例“Contour”对数据进行分组,并计算“Ca”中记录的平均值,总和或计数。...'])['Ca'].mean() df.groupby(by=['Contour'])['Ca'].count() df.groupby(by=['Contour'])['Ca'].sum() 也可以进行数据分组

9.7K50

【JavaWeb】62:单表查询,以及数据库总结

其中第一个只要以刘开头即可以,第二个以刘开头的个字。 ②查询成绩不为null的学生 score is not null; 这很好理解,从字面意思就能看出来。...count(score):score这一列因为有一行数据为null,所以不计算在内, ②统计班上的总分 sum,求和的意思。 sum(score):分数这一列所有的数据求和。...sum(score+age):(分数+年龄这)所有的数据求和。 ③统计班上的平均分 avg,求平均数的意思,很好理解。 avg(score):分数这一列求平均值。...avg(score+age):分数+年龄这求平均值。 sum(score)/count(*):总分除以总人数求平均值。...此外,还有个聚合函数: max(score):求分数这的最大值。 min(score):求分数这的最小值。 用法和上述一样,就不再赘述了。 再次强调: null是不参与运算的。

1.3K10

数据查询

is null 判断是否为 is not null 判断是否不为 排序 select 字段名… from 表名 order by 排序字段名排序方式 [,排序字段名 排序方式…];...聚合函数一般配合分组功能一起使用 分组 select分组的字段名,聚合函数... from 表名 groupby 分组字段名 having 分组后的条件; 查询显示的字段必须和分组的字段相同 分组一般配合聚合函数使用...where 指定,也可以使用 on 指定, 但建议使用 on 内连接指定连接条件取表的交集 左连接 select 表名1.字段名… from 表1 leftjoin 表2 on 表1.运算符表2....只需要交换个表的位置即可....,子查询 返回结果 为多行一列的值 行级子查询 ,子查询 返回结果 为一行多的值 自连接(了解) 由于数据的特殊性,表示不同类型的数据保存到了同一张表中。

80330

MySQL数据库完整知识点梳理----保姆级教程!!!

分组前筛选 分组后筛选 注意 表达式,函数和别名分组---只有mysql支持 按照多个字段分组,多个字段间用逗号隔开 添加排序---放在分组排序最后 分组查询时,除了聚合查询和分组的字段可以查询之外...10,18,19,20); ---- is null和is not null的使用 注意:=和不能用来判断null值,要用is null select *from stu where age is null; 不为...---- 表达式,函数和别名分组—只有mysql支持 学生的姓名的长度进行分组,选出组中同学个数大于个人的组 SELECT COUNT(*) 个数,LENGTH(`Name`) 名字长度 FROM...(结果集只有一行一列) 列子查询(结果集只有一列多行) 行子查询(结果集可以有一行多) 表子查询(结果集一般为多行多) ---- where或having后面 标量子查询(单行子查询) 列子查询(多行子查询...id和stuName都相同时,会报错,因为主键唯一,当插入记录的id和stuName某一条为时,会报错,因为id和stuName组合为一个主键,因此他们其中任意一个都不为 但是插入的记录和表中已有的某条记录的

5.8K10
领券