python - 使用 3 列在 pandas 中合并 2 个数据框
问题描述
所以基本上我有2个具有以下结构的数据框
PATH CUID NAME Author Updated
1 1 Test Test 01/01/2021
2 2 Test1 Test 01/01/2021
PATH CUID NAME Author Updated
1 1 Test Test 2 01/02/2021
3 3 Test2 Test 2 01/02/2021
是否可以使用 3 个键列进行合并?我知道使用 2 列合并的代码,但不确定是否可以添加第 3 列。
我正在进行外部连接,以便所有值都存在,如果两个数据帧上都没有匹配项,则只有 Author(x or y) 和 Updated(x or y) 将被清空。
示例输出为:
PATH CUID NAME Author_x Updated_x Author_y Updated_y
1 1 Test Test 01/01/2021 Test 2 01/02/2021
2 2 Test1 Test 01/01/2021
3 3 Test2 Test 2 01/02/2021
解决方案
是的,如果两个数据框中的列具有相同的名称,则可以通过传递一个列表来合并两个以上的键,然后使用 on=['columns1','columns2','columns3']
否则使用 left_on=['columns1','columns2','columns3'], right_on=['columns1','columns2','columns3']
请参阅https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.merge.html中的文档
推荐阅读
- snowflake-cloud-data-platform - 来自 root 用户/crontab 的 snowsql 命令失败
- mysql - SQL查询无法创建用户表
- pandas - 具有字典列表的列的pyarrow数据类型?
- python - Python3 二进制流处理 - 从标准输入读取单个 JPG
- typescript - 根据值类型过滤键子列表的接口键
- ios - UITableViewCell 不会改变它的 alpha/opacity
- r - Figlet wrap in R:如何改变猫/消息输出的宽度/大小?
- python - 将数据帧随机分成具有均匀分布值的组
- python - 如何在 Plotly 中旋转绘图的轴?
- python - 在栏中显示价值