前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Pandas知识点-添加操作append

Pandas知识点-添加操作append

作者头像
Python碎片公众号
发布2021-07-21 17:12:49
4.5K0
发布2021-07-21 17:12:49
举报

在Pandas中,append()方法用于将一个或多个DataFrame或Series添加到DataFrame中。append()方法也可以用于合并操作,本文介绍append()方法的用法。

一append()实现合并


append(other): 将一个或多个DataFrame添加到调用append()的DataFrame中,实现合并的功能,other参数传入被合并的DataFrame,如果需要添加多个DataFrame,则用列表或元组的方式传入。

append()方法通过添加的方式实现了合并的功能,这种合并功能是按行(纵向)进行合并的,合并结果的行数是所有DataFrame的行数之和。

二填充不存在的列


如果调用append()的DataFrame和传入append()的DataFrame中有不同的列,则添加后会在不存在的列填充空值,这样即使两个DataFrame有不同的列也不影响添加操作。

三添加多个DataFrame


添加多个DataFrame时,用列表或元组的方式传入多个DataFrame即可,添加的原理不变。如果需要,可以将批量的DataFrame合并成一个DataFrame。

四重设行索引


ignore_index: ignore_index参数默认为False,结果的行索引保持原DataFrame中的行索引,即使存在相同的行索引也不受影响。将ignore_index修改为True,则结果的行索引被重设为从0开始的整数索引。

verify_integrity: verify_integrity参数默认为False,添加的DataFrame中有相同的行索引时,可以保留原结果。将verify_integrity修改为True,如果添加的DataFrame中有相同的行索引,会抛出ValueError。设置verify_integrity参数为True,是为了避免结果中的行索引重复,但很可能会导致添加失败,所以需要先观察原始数据是否适合。

ignore_index和verify_integrity同时使用时,ignore_index先生效,所以两个参数同时使用时,不会抛出异常。

五添加Series


append()方法也可以在DataFrame中添加Series。添加Series时,要将ignore_index参数设置为True或给Series设置name参数,否则会抛出TypeError,原因是Series没有列名。

设置ignore_index参数为True会重设结果的行索引,这样添加的Series作为结果中的一行,会自动生成行索引。

指定Series的name参数,这样Series将以name参数作为行索引添加到DataFrame中。即使指定的name值与DataFrame中的行索引重复,也可以添加成功(verify_integrity不为True)。

六总结


截止到本文,本系列介绍了可以用于合并操作的五种方法:concat()、merge()、join()、combine()、append(),总结一下它们的用法差异。

concat(): 连接操作,可以连接多个DataFrame,可以设置按行合并还是按列合并。有inner、outer、left、right四种不同的连接方式。可以对结果的索引进行设置,尤其是对多重行索引的处理提供了多种方式。

merge(): 合并操作,只能用于合并两个DataFrame,且都是按列进行合并,只有当两个DataFrame的列名完全一样时才是按行合并的效果。合并时根据指定的连接列(或行索引)和连接方式来匹配两个DataFrame的行。可以在结果中设置相同列名的后缀和显示连接列是否在两个DataFrame中都存在。

join(): 加入操作,可以在一个DataFrame中加入多个DataFrame,结果都是按列进行合并的。合并时根据指定的连接列(或行索引)和连接方式来匹配两个DataFrame的行,也可以设置相同列名的后缀,所以有时候join()和merge()可以相互转换。

combine(): 联合操作,用于两个DataFrame,按列的方式进行联合。联合操作是将一个DataFrame中的部分数据用另一个DataFrame中的数据替换或补充,通过一个函数来定义联合时取数据的规则。在联合过程中还可以对空值进行填充。

append(): 添加操作,可以将多个DataFrame添加到一个DataFrame中,按行的方式进行添加。添加操作只是将多个DataFrame按行拼接到一起,可以重设行索引。

> 参考文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.append.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-07-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python 碎片 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档