Python中对列表、表格拼接的基础用法

在 Python 中,append 和 extend 是列表(List)数据结构的两个常用方法,用于在列表中添加元素。

早期的pandas中本来也可以使用append 和 extend 来拼接表格,但在最新版的pandas中,这两个函数已经删掉,拼接可以使用concat函数。

append与extend基础用法

append 方法用于在列表的末尾添加一个单个元素。例如:

my_list = [1, 2, 3]
my_list.append(4)
print(my_list) 

输出:[1, 2, 3, 4] 

在这个例子中,append(4) 将元素 4 添加到列表 my_list 的末尾。

extend 方法则用于将一个可迭代对象(如列表、元组等)的所有元素添加到另一个列表中。

my_list = [1, 2, 3]
another_list = [4, 5, 6]
my_list.extend(another_list)
print(my_list)

在这个例子中,extend(another_list) 将列表 another_list 的所有元素添加到列表 my_list 中。 

需要注意的是,append 方法是将一个单个元素添加到列表中,而 extend 方法是将一个可迭代对象的所有元素添加到列表中。

这意味着,如果使用 append 方法来添加一个列表,那么实际上是将整个列表作为一个单个元素添加到原始列表中。而使用 extend 方法,则是将列表中的每个元素分别添加到原始列表中。

my_list = [1, 2, 3]
another_list = [4, 5, 6]
# 使用 append 方法添加另一个列表
my_list.append(another_list) 
print(my_list) 
# 使用 extend 方法添加另一个列表
my_list = [1, 2, 3]
my_list.extend(another_list)
print(my_list)

在第一个例子中,使用 append(another_list) 将列表 another_list 作为一个单个元素添加到 my_list 中,结果是 my_list 变成了 [1, 2, 3, [4, 5, 6]]。 

而在第二个例子中,使用 extend(another_list) 将列表 another_list 中的每个元素分别添加到 my_list 中,结果是 my_list 变成了 [1, 2, 3, 4, 5, 6]。

在pandas中实现append和extend的用法

在Pandas中,append和extend两个方法都可用于在DataFrame或Series对象中添加新的行或列。

append

DataFrame.append(other, ignore_index=False, verify_integrity=False, sort=None)

描述:将一个DataFrame或Series对象添加到另一个DataFrame对象的末尾。

  • other:要添加的DataFrame或Series对象。
  • ignore_index:True,则忽略原始索引并为新的DataFrame创建一个新的连续索引;False(默认值),则保留原始索引。
  • verify_integrity:True,则检查添加操作是否会导致索引重复;False(默认值),则不进行检查。 
  • sort:True,则对结果进行排序;False(默认值),则不排序。

extend

用法:Series.extend(other) 描述:将一个Series对象扩展为包含另一个Series对象的所有元素。参数:other:要添加的Series对象。

注意:在新版pandas中,append和extend方法已经删除,可用concat代替。

concat

import pandas as pd
 
data1 = {'Name': ['Tom''Nick'],
         'Age': [28, 32]}
df1 = pd.DataFrame(data1)

data2 = {'Name': ['John''Sam'],
         'Age': [25, 29]}
df2 = pd.DataFrame(data2)

# 将df2追加到df1中
df1 = pd.concat([df1, df2], ignore_index=True)

print(df1)


请使用浏览器的分享功能分享到微信等