2024-05-16 03:29:05 发布
网友
我有一个pandas数据框,其中一列显示货币,另一列显示价格。我想创建一个新的列,根据其他两列的值将价格标准化为美元。
例如
currency price SGD 100 USD 80 EUR 75
新列的条件与
如果货币=新加坡元: 价格=价格/1.37等
所以最后看起来
currency price new_price SGD 100 72.99 USD 80 80 EUR 75 65.22
您可以创建一个包含所有货币转换的字典,然后将price列除以货币列mapped到字典中。
df = pd.DataFrame({'currency': ['SGD', 'USD', 'EUR'], 'price': [100, 80, 75]}) to_usd = {'USD': 1.0, 'SGD': 1.37, 'EUR': 1.15} df['new_price'] = df.price / df.currency.map(to_usd) print(df)
印刷品:
currency price new_price 0 SGD 100 72.992701 1 USD 80 80.000000 2 EUR 75 65.217391
您可以创建一个包含所有货币转换的字典,然后将price列除以货币列mapped到字典中。
印刷品:
相关问题 更多 >
编程相关推荐