1. concat函数
1.1 基本概念
pandas
中的concat
函数用于沿着指定轴(行或列)将多个DataFrame
或Series
对象连接起来。
1.2 参数详解
objs
:需要连接的对象列表,通常是DataFrame
或Series
的列表。例如[df1, df2, df3]
。axis
:指定连接的轴,0
表示按行连接(垂直连接),1
表示按列连接(水平连接)。默认值为0
。join
:指定连接方式,可以是'inner'
(交集)或'outer'
(并集)。默认值为'outer'
,即保留所有数据。ignore_index
:是否忽略原始索引,重新生成默认整数索引。默认为False
,如果设为True
,将不保留原始索引。keys
:可以用于多层索引的组合,如果提供该参数,则最终的DataFrame
会有多层索引。levels
:如果keys使用的是多层索引,可以通过levels参数指定每一层的标签。names
:设置多层索引的名称。
1.3 使用示例
import pandas as pd
# 创建示例数据
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
'B': ['B0', 'B1', 'B2']})
df2 = pd.DataFrame({'A': ['A3', 'A4', 'A5'],
'B': ['B3', 'B4', 'B5']})
# 使用concat函数按行连接
result = pd.concat([df1, df2], axis=0, ignore_index=True)
print(result)
concat
函数将df1
和df2
按行连接,生成一个新的DataFrame
。由于ignore_index=True
,新的DataFrame
不保留原始索引,而是重新生成默认的整数索引。
2. append函数
2.1 基本概念
append
函数用于将一个DataFrame
或Series
对象追加到另一个DataFrame
的末尾。与concat
不同的是,append
通常用于追加单个对象,并且语法上更简单。它实际上是concat
函数的一种特殊情况,只不过更加便捷。
2.2 参数详解
other
:需要追加的DataFrame
或Series
。ignore_index
:是否忽略原始索引,重新生成默认整数索引。默认为False
。verify_integrity
:是否检查索引重复。如果设为True
,则在索引重复时会引发错误。默认为False
。sort
:是否在连接时对列进行排序。默认为None
,表示不排序。
2.3 使用示例
import pandas as pd
# 创建示例数据
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
'B': ['B0', 'B1', 'B2']})
df2 = pd.DataFrame({'A': ['A3', 'A4', 'A5'],
'B': ['B3', 'B4', 'B5']})
# 使用append函数追加数据
result = df1.append(df2, ignore_index=True)
print(result)
append
函数将df2
追加到df1
的末尾,生成一个新的DataFrame
。由于ignore_index=True
,新的DataFrame
不保留原始索引,而是重新生成默认的整数索引。