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

合并excel的两列,为空的单元格被另一列有值的替换?

一、前言 前几天在Python铂金交流群【逆光】问了一个Pandas数据处理的问题,问题如下:请问 合并excel的两列,为空的单元格被另一列有值的替换。...【逆光】:好的,我去看看这个函数谢谢 【逆光】:我列表的两列不挨着, a b互补,我需要变成c (c 包含 a 和 b) 【Siris】:最笨的方法遍历判断呗 【逆光】:太慢了,我的数据有点多。...pandas里两列不挨着也可以用bfill。 【瑜亮老师】:@逆光 给出两个方法,还有其他的解决方法,就不一一展示了。 【逆光】:报错,我是这样写的。...就是你要给哪一列全部赋值为相同的值,就写df['列名'] = '值'。不要加方括号,如果是数字,就不要加引号。 【逆光】:我也试过,分开也是错的· 【瑜亮老师】:哦,是这种写法被替换了。...【瑜亮老师】:3列一起就是df.loc[:, ['列1', '列', '列3'']] = ["值", 0, 0] 【不上班能干啥!】:起始这行没有报错,只是警告,因为你这样操作会影响赋值前的变量。

11910

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

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

    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

    43930

    别说了,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两列都不为空。 ?

    47520

    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子句用于将查询结果表按某一列或多列值进行分组,列值相等的为一组,

    4.3K20

    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.2K92

    2.25 PowerBI数据建模-排名:RANKX,RANK,ROWNUMBER

    1 单个字段排名2 单个字段分组排名3 多个字段排名计算表:1 新建计算表,并一步到位增加一列单个字段排名2 新建计算表,并一步到位增加一列单个字段分组排名3 新建计算表,并一步到位增加一列多个字段排名举例使用不同函数实现各种场景的排名...RANKX不支持按多个依据排名,可以做两次排名叠加,按产品个数放大销量排名的倍数,然后在这个基础上叠加产品排名。...因此,第1种场景中的度量值都自然就会按分组排名。4 多个字段相对排名第3种场景下,表中有两个维度字段,人员和产品,除了分组给产品排名,还有一种情况就是把人员&产品当作排名对象,按销量做排名。...('人员表'[人员])), DESC,[产品],ASC)))2 新建计算表,并一步到位增加一列单个字段分组排名计算表中,给整个表新增一个排名列,使用RANK函数中的PARTITIONBY参数,先分组再排名...人员产品Sales_一步到位增加一列产品在人员分组中按Sales排名列 = VAR _vt_basic = SUMMARIZECOLUMNS('人员表'[人员],'产品表'[产品],"Sales",[Sales

    7100

    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

    96620

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

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

    15K20

    学数据库还不会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 函数返回一列中的最小值

    97030

    数据库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 函数返回一列中的最小值

    83410

    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 则表示最后结果将按该列的数据进行分列。

    26K64

    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.8K50

    【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
    领券