【问题标题】:How do I merge/expand two python pandas dataframes, based on one common column but different content?如何基于一个公共列但不同的内容合并/扩展两个 python pandas 数据框?
【发布时间】:2020-06-13 23:28:44
【问题描述】:

我想合并两个数据框,但没有得到正确的结果。 df1 像这样:

         Date Name1
0  2018-08-05   abc
1  2019-08-05  cdsx
2  2020-08-05  sdfs

df2 像这样

         Date  Name2
0  2017-06-02  dfdds
1  2018-09-17   hger

我想合并这两个数据框,得到一个像这样的df3:

         Date Name1  Name2
0  2017-06-02   NaN  dfdds
1  2018-08-05   abc    NaN
2  2018-09-17   NaN   hger
3  2019-08-05  cdsx    NaN
4  2020-08-05  sdfs    NaN

df1 和 df2 有一个共同的列:Date,但没有相同的信息。

我尝试使用“合并”,但没有得到正确的结果。

谁能给我一些解决这个问题的建议?

【问题讨论】:

    标签: python pandas dataframe merge


    【解决方案1】:

    使用外部 mergesort=True

    print( pd.merge(df1, df2, on='Date', how='outer', sort=True) )
    

    打印:

            Date Name1  Name2
    0 2017-06-02   NaN  dfdds
    1 2018-08-05   abc    NaN
    2 2018-09-17   NaN   hger
    3 2019-08-05  cdsx    NaN
    4 2020-08-05  sdfs    NaN
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-18
      • 1970-01-01
      • 2019-12-16
      • 1970-01-01
      • 2021-12-16
      相关资源
      最近更新 更多