python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python合并DataFrame

Python按照某列内容对两个DataFrame进行合并操作方法

作者:麻辣贼香锅

这篇文章主要给大家介绍了关于Python按照某列内容对两个DataFrame进行合并操作的相关资料,文中通过代码示例介绍的非常详细,对大家学习或者使用Python具有一定的参考借鉴价值,需要的朋友可以参考下

要将两个DataFrame进行合并,如data1 和 data2按照第一列的内容纵向合并为一个新的DataFrame,可以使用pandas库中的merge()方法,按照实际需求将how参数设置为‘left’、‘right’、‘outer’、‘inner’。

其中:

假设data1表示如下:

  col1  col2
0    A     1
1    B     2
2    C     3

data2表示如下:

  col1 col3
0    A    x
1    B    y
2    D    z

将col1作为合并的基准,使用"how = inner",代码和结果如下:

import pandas as pd
data1 = {'col1': ['A', 'B', 'C'], 'col2': [1, 2, 3]}
data2 = {'col1': ['A', 'B', 'D'], 'col3': ['x', 'y', 'z']}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
merged_df = pd.merge(df1, df2, on='col1', how='inner')
print(merged_df)

  col1  col2 col3
0    A     1    x
1    B     2    y

将col1作为合并的基准,使用"how = outer",代码和结果如下:

merged_df = pd.merge(df1, df2, on='col1', how='outer')

  col1  col2 col3
0    A   1.0    x
1    B   2.0    y
2    C   3.0  NaN
3    D   NaN    z

将col1作为合并的基准,使用"how = left",代码和结果如下:

merged_df = pd.merge(df1, df2, on='col1', how='left')

  col1  col2 col3
0    A     1    x
1    B     2    y
2    C     3  NaN

将col1作为合并的基准,使用"how = right",代码和结果如下:

merged_df = pd.merge(df1, df2, on='col1', how='right')

  col1  col2 col3
0    A   1.0    x
1    B   2.0    y
2    D   NaN    z

 总结

到此这篇关于Python按照某列内容对两个DataFrame进行合并操作方法的文章就介绍到这了,更多相关Python合并DataFrame内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文