oldtroy 2023-04-07 17:36 采纳率: 84.6%
浏览 13
已结题

Python Dataframe 合并问题

我有如下两个 Dataframe, 我想将两个dataframe 合并成如下样子,请问 Pandas 如何实现。

df1:

    name    id
0  Rose  N0002
1  Nimo  N0003

df2:

  code  
0  S1
1  S2
2  S3

df1 + df2 = :

    name    id      code
0  Rose  N0002    S1
1  Nimo  N0003    S1
2  Rose  N0002    S2
3  Nimo  N0003    S2
4  Rose  N0002    S3
5  Nimo  N0003    S3

  • 写回答

3条回答 默认 最新

  • Leodong. 2023-04-07 17:50
    关注

    该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
    可以使用 Pandas 中的 merge 函数来实现两个 DataFrame 的合并,具体操作如下:

    import pandas as pd
    
    # 创建 df1 和 df2
    df1 = pd.DataFrame({'name': ['Rose', 'Nimo'], 'id': ['N0002', 'N0003']})
    df2 = pd.DataFrame({'code': ['S1', 'S2', 'S3']})
    
    # 将 df1 和 df2 按列合并
    result = pd.merge(df1.assign(key=0), df2.assign(key=0), on='key').drop('key', axis=1)
    
    # 输出合并后的结果
    print(result)
    

    运行结果如下:

        name     id code
    0   Rose  N0002   S1
    1   Rose  N0002   S2
    2   Rose  N0002   S3
    3   Nimo  N0003   S1
    4   Nimo  N0003   S2
    5   Nimo  N0003   S3
    

    这里,我们首先使用 assign 函数为每个 DataFrame 添加一个 key 列,然后使用 merge 函数将两个 DataFrame 按照 key 列进行合并,最后再将 key 列删除即可得到结果。


    如果以上回答对您有所帮助,点击一下采纳该答案~谢谢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月16日
  • 已采纳回答 4月8日
  • 修改了问题 4月7日
  • 修改了问题 4月7日
  • 展开全部

悬赏问题

  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)