python - Pandas:基于其他两列值的新列
问题描述
我有两列,一列带有旧 ID 号(b 列),另一列带有新 ID 号(a)。鉴于我在 a 和 c 中的信息,我想找出与旧 ID 号对应的名称 (c)。
# Example dataset
print(df1)
# output
a b c
4 5 John
5 19 Joanna
1 4 Jenna
19 10 Jane
10 66 Johnna
16 16 JoJo
我想要达到的目标:
print(df2)
# output
b d
5 Joanna
19 Jane
4 John
10 Johnna
66 na
16 JoJo
解决方案
df['d'] = df['b'].map(dict(df[['a', 'c']].to_numpy()))
推荐阅读
- excel - Excel VBA 代码适用于我,但不适用于其他人
- python - 你如何模拟动态添加的对象方法?
- appium-android - 无法使用 codeceptJS 测试原生 Android 应用
- dataframe - 使用正确的列名从多索引数据框创建一个新的
- python - 在另一个夹具中使用 requests_mock 时,模拟 URL 未转发给处理程序
- qt - QVBoxLayout 用 spacer 推到顶部
- html - 使用位置制作元素:绝对拉伸父级的阴影?
- java - 无论如何在使用 gradle 时编译 proto 文件?
- android - 使用父项上的 where 子句查询一对多关系查询不返回任何内容
- java - 没有脚本代码的Jsoup HTML提取