【问题标题】:Pandas Combining data in two excel熊猫在两个excel中组合数据
【发布时间】:2018-07-15 07:11:10
【问题描述】:

我有两个excel

Excel 1

files   language    blank   comment code
15       C++            66  35      354
1       C/C++ Header    3   7        4

Excel 2

files   language    blank   comment code
16       C++           33   35      354
1       C/C++ Header    3   7        4
1       Python          1   1        1

试图得到合并的excel

files   language    blank   comment code
31       C++           99   70      708
2       C/C++ Header    6   14       8
1       Python          1   1        1

pandas 中的任何提示

【问题讨论】:

    标签: python excel python-3.x pandas


    【解决方案1】:

    使用concatsum 聚合groupby

    df = pd.concat([df1, df2]).groupby('language', as_index=False).sum()
    print (df)
           language  files  blank  comment  code
    0           C++     31     99       70   708
    1  C/C++ Header      2      6       14     8
    2        Python      1      1        1     1
    

    如果列的顺序很重要,请添加reindex:

    df=pd.concat([df1, df2]).groupby('language',as_index=False).sum().reindex(columns=df1.columns)
    print (df)
       files      language  blank  comment  code
    0     31           C++     99       70   708
    1      2  C/C++ Header      6       14     8
    2      1        Python      1        1     1
    

    【讨论】:

    • 你解决了两件事,即使我想改变订单
    【解决方案2】:

    你可以使用


    pd.merge(df1, df2, how='inner')
    

    合并

    这是合并两个或多个 DataFrame 的最简单方法。 有关更多信息,请阅读 Pandas 文档。 http://pandas.pydata.org/pandas-docs/stable/

    【讨论】:

      猜你喜欢
      • 2019-12-18
      • 2017-06-11
      • 2016-01-01
      • 2021-05-30
      • 2018-10-12
      • 2017-09-02
      相关资源
      最近更新 更多