基于python中其他列的值创建新列
我有一个熊猫数据框,一列显示货币,另一列显示价格。我想创建一个新列,根据其他两列的值将价格标准化为美元 例如 新柱的条件类似于 如果货币==新加坡元: 价格=价格/1.37等 所以最后看起来基于python中其他列的值创建新列,python,pandas,Python,Pandas,我有一个熊猫数据框,一列显示货币,另一列显示价格。我想创建一个新列,根据其他两列的值将价格标准化为美元 例如 新柱的条件类似于 如果货币==新加坡元: 价格=价格/1.37等 所以最后看起来 currency price new_price SGD 100 72.99 USD 80 80 EUR 75 65.22 您可以创建一个包含所有货币转换的字典,然后将价格列除以货币列,将其放入字典 df = p
currency price new_price
SGD 100 72.99
USD 80 80
EUR 75 65.22
您可以创建一个包含所有货币转换的字典,然后将价格列除以货币列,将其放入字典
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
currency price new_price
0 SGD 100 72.992701
1 USD 80 80.000000
2 EUR 75 65.217391