当我们在使用 pandas 来处理数据时,DataFrame 是我们使用最频繁的数据结构之一。DataFrame 中的数据以二维表格的形式出现,其中每行代表一个数据样本,每列代表一个特征或变量。
在 pandas 的 DataFrame 中,我们可以使用 append
方法来合并两个 DataFrame。这个方法返回的是一个新的 DataFrame,原始的两个 DataFrame 不会被修改。
下面详细介绍 append
方法的用法。
基本用法
可以使用如下的方法调用 append
:
df1.append(df2)
其中 df1
和 df2
是两个要合并的 DataFrame。默认情况下,append
沿着 DataFrame 的行的方向进行合并,即将 df2
添加到 df1
的下面。
下面的示例说明了这个基本用法:
import pandas as pd
# 创建两个 DataFrame
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3'],
'C': ['C0', 'C1', 'C2', 'C3'],
'D': ['D0', 'D1', 'D2', 'D3']})
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
'B': ['B4', 'B5', 'B6', 'B7'],
'C': ['C4', 'C5', 'C6', 'C7'],
'D': ['D4', 'D5', 'D6', 'D7']})
# 合并两个 DataFrame
combined_df = df1.append(df2)
print(combined_df)
执行以上代码,输出的结果如下:
A B C D
0 A0 B0 C0 D0
1 A1 B1 C1 D1
2 A2 B2 C2 D2
3 A3 B3 C3 D3
0 A4 B4 C4 D4
1 A5 B5 C5 D5
2 A6 B6 C6 D6
3 A7 B7 C7 D7
从上述输出结果可以看出,append
方法将 df2
添加到了 df1
的下面,形成了一个新的 DataFrame。
需要注意,append
方法并不会修改原始的两个 DataFrame,而是返回一个新的 DataFrame。因此,在使用 append
方法时,一定要将返回值赋值给某个变量。
指定参数
除了默认的行方向合并外,append
方法还可以指定一些参数。
1. 指定合并的列方向
除了默认的行方向合并以外,我们还可以指定通过哪一个轴来合并 DataFrame。可以通过设置参数 axis
来实现:
df1.append(df2, axis=1)
这样就可以将 df2
添加到 df1
的右边。
2. 忽略索引
默认情况下,append
方法会将原始 DataFrame 的索引保留在新的 DataFrame 中。可以通过设置参数 ignore_index
来忽略索引:
df1.append(df2, ignore_index=True)
这样就可以重新生成索引了,使其按照顺序从 0 开始。
下面的示例进一步说明了这两个参数的用法:
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3'],
'C': ['C0', 'C1', 'C2', 'C3'],
'D': ['D0', 'D1', 'D2', 'D3']}, index=[0, 1, 2, 3])
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
'B': ['B4', 'B5', 'B6', 'B7'],
'C': ['C4', 'C5', 'C6', 'C7'],
'D': ['D4', 'D5', 'D6', 'D7']}, index=[0, 1, 2, 3])
# 沿着列方向合并,忽略索引
combined_df = df1.append(df2, axis=1, ignore_index=True)
print(combined_df)
执行以上代码,输出结果如下:
0 1 2 3 4 5 6 7
0 A0 B0 C0 D0 A4 B4 C4 D4
1 A1 B1 C1 D1 A5 B5 C5 D5
2 A2 B2 C2 D2 A6 B6 C6 D6
3 A3 B3 C3 D3 A7 B7 C7 D7
从上述输出结果可以看出,新的 DataFrame 中的索引已经被重新生成了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详细介绍pandas的DataFrame的append方法使用 - Python技术站