I am trying to convert certain values in a dataframe to USD dollar. Hence i have an dataframe for currency conversions and another is the data.
Currency dataframe:
Identifier Price
USDJPY 110.42
USDHKD 7.8483
USDCNH 6.7837
USDUSD 1.0
The data looks like this:
date acct type currency isM pbc spanReq exchange
20190215 20 S JPY INIT CORE 14872000.0 SGX
20190215 40 S USD INIT CORE 2987340.93 SGX
20190215 60 S USD INIT CORE 2030260.39 SGX
20190215 70 S JPY INIT CORE 57172391.0 SGX
20190215 20 S JPY INIT CORE 106516141.0 OSE
20190215 70 S JPY INIT CORE 1800000.0 OSE
20190215 10 S CNH INIT CORE 0.0 HKEX
20190215 40 S HKD INIT CORE 36071131.4 HKEX
20190215 60 S HKD INIT CORE 3459377.95 HKEX
20190215 70 S HKD INIT CORE 81300.0 HKEX
20190215 80 S HKD INIT CORE 23698214.0 HKEX
20190215 10 S USD INIT CORE 1728005.0 CME
20190215 20 S USD INIT CORE 83671.0 CME
20190215 30 S USD INIT CORE 6237.0 CME
20190215 40 S USD INIT CORE 857120.0 CME
20190215 60 S USD INIT CORE 2803385.0 CME
20190215 70 S USD INIT CORE 9007666.0 CME
20190215 90 S USD INIT CORE 119644.0 CME
Expected Output:
date acct type currency isM pbc spanReq exchange
20190215 20 S JPY INIT CORE 134551.70541934317 SGX
20190215 40 S USD INIT CORE 2987340.93 SGX
20190215 60 S USD INIT CORE 2030260.39 SGX
20190215 70 S JPY INIT CORE 517256.77191712655 SGX
20190215 10 S CNH INIT CORE 0.0 HKEX
20190215 40 S HKD INIT CORE 4624504.025641026 HKEX
20190215 60 S HKD INIT CORE 443509.9935897436 HKEX
20190215 70 S HKD INIT CORE 10423.076923076924 HKEX
20190215 80 S HKD INIT CORE 3038232.564102564 HKEX
20190215 20 S JPY INIT CORE 963685.343345698 OSE
20190215 70 S JPY INIT CORE 16285.171446666063 OSE
20190215 10 S USD INIT CORE 1728005.0 CME
20190215 20 S USD INIT CORE 83671.0 CME
20190215 30 S USD INIT CORE 6237.0 CME
20190215 40 S USD INIT CORE 857120.0 CME
20190215 60 S USD INIT CORE 2803385.0 CME
20190215 70 S USD INIT CORE 9007666.0 CME
20190215 90 S USD INIT CORE 119644.0 CME
My code looks like this:
initial_margin_data['spanReq'] = initial_margin_data['spanReq'].astype(float)/d.loc[d['Identifier'] == initial_margin_data['currency'], 'Price']
The second line gives me this error:
Can only compare identically-labeled Series objects
Need some guidance on this.