在不同日期的大熊猫数据库中转换USD-> EUR

时间:2019-07-05 08:09:27

标签: python pandas currency

我正在尝试将Pandas DataFrame中的列从USD转换为EUR。每个条目都有不同的日期,因此需要不同的转换率。问题在于DataFrame包含超过2亿行,因此它应该尽可能高效。有谁知道如何有效地做到这一点?我尝试了这个,但是它似乎非常慢:

    from easymoney.money import EasyPeasy
    ep = EasyPeasy()
    df['money_eur'] = df.apply(lambda x: ep.currency_converter(x['money_usd'], 'USD', 'EUR', date=x['date'].strftime('%d/%m/%Y')), axis=1)

1 个答案:

答案 0 :(得分:0)

找到了解决方案!用每天的所有汇率预先计算一个数据库。对df和汇率d使用左合并。现在,USD列可以轻松使用。

df = df.merge(exchangeRatesCurrencies, how='left', left_on='date_days', right_on='date_exchange')
df['money_eur'] = df['money_usd'] / df['USD']