Pandas DataFrame的合并方法
Pandas DataFrame的合并方法是指将两个或多个DataFrame对象进行合并,使用Pandas提供的merge()函数可以实现。
Pandas DataFrame的合并方法
- Pandas的merge()函数实现了多个DataFrame对象的合并,可以指定连接的列名,连接的类型,连接的方式,输出的类型等。
- merge()函数的参数主要有left、right、how、on等:
- left和right指定要进行合并的两个DataFrame对象;
- how指定连接的方式,有inner、left、right、outer四种方式;
- on指定连接的列名,可以是字符串或者列表;
- suffixes指定合并时重复列名的后缀,默认为('_x', '_y');
- indicator指定是否在合并后的DataFrame中添加一列标志位,用于标志哪些行是由哪一个DataFrame中添加的;
- sort指定是否按照指定的列名排序;
- copy指定是否复制DataFrame,默认为True。
Pandas DataFrame的合并方法示例代码
# 导入Pandas模块 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']}, 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=[4, 5, 6, 7]) # 使用merge()函数进行合并 df3 = pd.merge(df1, df2, how='outer', on='A', suffixes=('_left', '_right')) # 输出合并后的DataFrame print(df3)
输出结果
A B_left C_left D_left B_right C_right D_right 0 A0 B0 C0 D0 B4 C4 D4 1 A1 B1 C1 D1 B5 C5 D5 2 A2 B2 C2 D2 B6 C6 D6 3 A3 B3 C3 D3 B7 C7 D7 4 A4 NaN NaN NaN B4 C4 D4 5 A5 NaN NaN NaN B5 C5 D5 6 A6 NaN NaN NaN B6 C6 D6 7 A7 NaN NaN NaN B7 C7 D7