开发者社区> 问答> 正文

如何迭代Pandas Dataframe中的行

一码平川MACHEL 2019-02-28 14:44:56 568

我的数据看起来像这样:

Currency Average Cost for two
0 Botswana Pula(P) 1100
1 Botswana Pula(P) 1200
2 Botswana Pula(P) 4000
3 Botswana Pula(P) 1500
4 Botswana Pula(P) 1500
我想创建一个新的列,将成本转换为美元。仅举几说,有12种货币。

这就是我写的:

for i in range(len(df)) :
if(dfi == 'Botswana Pula(P)'):

df[i]['new cost'] = df[i]['Average Cost for two'] * 0.095

if (dfi == 'Brazilian Real(R$)']):

df[i]['new cost'] = df[i]['Average Cost for two'] * 0.266

and so on...
本问题及下方已被采纳的回答均来自云栖社区【Python技术进阶大群】。https://yq.aliyun.com/articles/690084 点击链接欢迎加入社区大社群。

Python
分享到
取消 提交回答
全部回答(1)
  • 一码平川MACHEL
    2019-07-17 23:29:48

    为所有货币创建字典,map为其值创建列,使用列创建多个Average Cost for two:

    d = {'Botswana Pula(P)':0.095, 'Brazilian Real(R$)':0.266, ...}

    df['new cost'] = df['Average Cost for two'] * df['Currency'].map(d)

    0 0

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题