python - Python Pandas - 错误:只能比较标签相同的系列对象
问题描述
set df1["name"] = df2["name] if df1["id"] == df2["id].
两个数据帧的大小不同。我试图通过编写如下代码来实现此行为:
dtl['name'] = dtlLookUp[["name"]].loc[ dtlLookUp["id"] == (dtl["id"]) ]
但是,我收到错误:
ValueError: Can only compare identically-labeled Series objects
编辑 :
解决方案
我的问题解决了。为可能遇到相同错误的其他人发布它(当我搜索此错误但已发布的解决方案都没有为我工作,所以我只是改变了我解决问题的方向)。我将此问题视为左连接。
psb = pd.merge(dtl, dtlLookUp, how='left', on=['id'])
ps 把每一个问题都标记为否决票是不礼貌的,只是因为你看不懂。但是,我相信该解决方案会帮助很多人!
推荐阅读
- java - 如何改变“私有静态最终”参数?
- javascript - 使用路由器时使用 nginx 反应应用程序不切换组件
- date - 如何从 XmlGregorianCalendar 中获取考虑到偏移量的日期?
- r - 如何通过 R 中列向量的数字或字母值对矩阵进行排序?
- java - Springboot 请求参数的 Bean 验证
- python - 如何在训练和测试数据中对齐 pandas get_dummies?
- javascript - 如何修复“jquery 追加某些内容,但其 javascript 函数仅在按钮的单击事件上不起作用”
- php - cron 作业创建文件夹 + 移动文件
- r - 在 R bookdown 中,如何为 pdf 和 html 输出编写一个非常大的表(120 行,8 列)?
- android - Android 应用程序在打开时关闭,但不会崩溃