append()方法_超详细教程 | pandas合并之append和concat

本文详细介绍了Pandas中用于数据拼接的`append()`和`concat()`方法,包括它们的使用场景、参数及示例。`append()`主要用于在数据框末尾添加行,支持DataFrame、Series、字典和列表等多种类型的数据,而`concat()`则能进行横向或纵向拼接,可处理多个对象,并提供了多种拼接方式选项。
摘要由CSDN通过智能技术生成

594233c1fd82be2718408985623787c3.png

0841d6e30ba67a35397efe9b98e702cb.png

​ 本篇文章主要介绍了pandas中对series和dataframe对象进行连接的方法:pd.append()和pd.concat(),文中通过示例代码对这两种方法进行了详细的介绍,希望能对各位python小白的学习有所帮助。

一、df.append(df)

描述:append方法用以在表尾中添加新的行,并返回追加后的数据对象,若追加的行中存在原数据没有的列,会新增一列,并用nan填充;若追加的行数据中缺少原数据某列,同样以nan填充

语法:df.append(other, ignore_index=False, verify_integrity=False, sort=None)

​ 参数说明:

  • other:要追加的数据,可以是dataframe,series,字典,列表
  • ignore_index:两个表的index是否有实际含义,默认为False,若ignore_index=True,表根据列名对齐合并,生成新的index
  • verify_integrity:默认为False,若为True,创建具有重复项的索引时引发ValueError
  • sort:默认为False,若为True如果’ self ‘和’ other '的列没有对齐,则对列进行排序。

下面对append方法的每个参数进行详细介绍:

​ 第一个参数为other:要追加的数据,可以是dataframe,series,字典,列表甚至是元素;但前后类型要一致。

  1. 将数据追加到series

# 将数据追加到series <<< a=df.iloc[0,:] <<< b=df.iloc[6,:] <<< a.append(b) #需赋给新值,不改变原数组 A 0 B 1 C 2 D 3 E 4 F 5 A 36 B 37 C 38 D 39 E 40 F 41 dtype: int32 <<< a A 0 B 1 C 2 D 3 E 4 F 5 Name: S1, dtype: int32 <<< c=a.append(b) # 保存为c <<< c A 0 B 1 C 2 D 3 E 4 F 5 A 36 B 37 C 38 D 39 E 40 F 41 dtype: int32

  1. 将数据追加到dataframe

# 将数据追加到dataframe <<< a=df.iloc[0:2,:] <<< b=df.iloc[4:6,:] <<< c=a.append(b) # 注意是纵向追加,不支持横向追加 <<< c A B C D E F S1 0 1 2 3 4 5 S2 6 7 8 9 10 11 S5 24 25 26 27 28 29 S6 30 31 32 33 34 35

​ 注意:获取单行得到的结果是一维数组,当一维数组[6,:]和二维数组[2,6]追加时,会得到8*7的数组,匹配不上的地方用NA填充。

# 将二维数组追加到一维数组 <<< a=df.iloc[0,:] <<< b=df.iloc[4:6,:] <<< c=a.append(b) <<< c 0 A B C D E F A 0.0 NaN NaN NaN NaN NaN NaN B 1.0 NaN NaN NaN NaN NaN NaN C 2.0 NaN NaN NaN NaN NaN NaN D 3.0 NaN NaN NaN NaN NaN NaN E 4.0 NaN NaN NaN NaN NaN NaN F 5.0 NaN NaN NaN NaN NaN NaN S5 NaN 24.0 25.0 26.0 27.0 28.0 29.0 S6 NaN 30.0 31.0 32.0 33.0 34.0 35.0

  1. 将数据追加到list
  • list是一维:以列的形式来进行追加操作
  • list是二维:以行的形式来进行追加操作
  • list是三维:只添加一个值
    注意:追加到列表时,是在原数组改动,是在原数组改动,是在原数组改动

# 列表追加到列表 <<< a=[] <<< b=df.iloc[6,:].tolist() <<< a.append(b) <<< a [[36, 37, 38, 39, 40, 41]]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值