首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何参照其他数据框架制作新的大熊猫栏

如何参照其他数据框架制作新的大熊猫栏
EN

Stack Overflow用户
提问于 2018-08-22 16:52:41
回答 2查看 43关注 0票数 1

输入:

代码语言:javascript
运行
复制
df1=pd.DataFrame({
    "BusId":['abc1','abc2','abc3'],
    "Fair Increase":[2,3,5]
})
df2=pd.DataFrame({
    'BusId':['abc1','abc2','abc3','abc4','abc5'],
    "Fair":[5,6,7,8,9]
})

只需要计算BusId在df1 on df2中。

在df2中计算增加的公平公平+ df1中的公平增长

预期产出:

代码语言:javascript
运行
复制
BusId   Fair    Increased Fair
abc1    5           7
abc2    6           9
abc3    7           12
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-22 17:00:08

可以使用df.merge合并df2和df2,创建新列Increased Fair并删除旧列Fair Increase

代码语言:javascript
运行
复制
>>> df3 = df2.merge(df1).set_index('BusId')
>>> df3['Increased Fair'] = df3['Fair'] + df3['Fair Increase']
>>> del df3['Fair Increase']
>>> df3
       Fair  Increased Fair
BusId                      
abc1      5               7
abc2      6               9
abc3      7              12
票数 1
EN

Stack Overflow用户

发布于 2018-08-22 17:18:53

您可以在字典查找中使用map

代码语言:javascript
运行
复制
m = dict(df2.values)
df1.assign(**{'Increased Fair': df1.BusId.map(m) + df1['Fair Increase']})

  BusId  Fair Increase  Increased Fair
0  abc1              2               7
1  abc2              3               9
2  abc3              5              12
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51971688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档