Python Pandas Create USD_Converted column
up vote
0
down vote
favorite
I have two dataframes, deals
Currency Deal_Amount
0 USD 18.40
1 USD 18.40
2 USD 5559.00
3 USD 14300.00
4 USD 1000.00
5 EUR 3072.00
6 USD 500.00
7 CAD 100000.00
8 USD 250.00
15 EUR 6000.00
and currency_rates
currency_code year quarter from_usd_rate to_usd_rate
AED 2018 3 3.67285 0.27226813
ARS 2018 3 17.585 0.056866648
AUD 2018 3 1.27186 0.786250059
BRL 2018 3 3.1932 0.313165477
CAD 2018 3 1.2368 0.808538163
EUR 2018 3 0.852406 1.173149884
GBP 2018 3 0.747077 1.338550109
GHS 2018 3 4.4 0.227272727
I want to create a column in deals that converts deals where deals['Currency'] != USD, and apply the currency_rate['to_usd_rate'] to deals['Deal_Amount'] to get the USD converted amount.
So far i tried
def convert_amount(data):
if data['Currency']==currency_rates['currency_code']:
Converted_amount=data['Deal_Amount'] * currency_rates['to_usd_rate']
return Converted_amount
but its not working.
python pandas
add a comment |
up vote
0
down vote
favorite
I have two dataframes, deals
Currency Deal_Amount
0 USD 18.40
1 USD 18.40
2 USD 5559.00
3 USD 14300.00
4 USD 1000.00
5 EUR 3072.00
6 USD 500.00
7 CAD 100000.00
8 USD 250.00
15 EUR 6000.00
and currency_rates
currency_code year quarter from_usd_rate to_usd_rate
AED 2018 3 3.67285 0.27226813
ARS 2018 3 17.585 0.056866648
AUD 2018 3 1.27186 0.786250059
BRL 2018 3 3.1932 0.313165477
CAD 2018 3 1.2368 0.808538163
EUR 2018 3 0.852406 1.173149884
GBP 2018 3 0.747077 1.338550109
GHS 2018 3 4.4 0.227272727
I want to create a column in deals that converts deals where deals['Currency'] != USD, and apply the currency_rate['to_usd_rate'] to deals['Deal_Amount'] to get the USD converted amount.
So far i tried
def convert_amount(data):
if data['Currency']==currency_rates['currency_code']:
Converted_amount=data['Deal_Amount'] * currency_rates['to_usd_rate']
return Converted_amount
but its not working.
python pandas
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I have two dataframes, deals
Currency Deal_Amount
0 USD 18.40
1 USD 18.40
2 USD 5559.00
3 USD 14300.00
4 USD 1000.00
5 EUR 3072.00
6 USD 500.00
7 CAD 100000.00
8 USD 250.00
15 EUR 6000.00
and currency_rates
currency_code year quarter from_usd_rate to_usd_rate
AED 2018 3 3.67285 0.27226813
ARS 2018 3 17.585 0.056866648
AUD 2018 3 1.27186 0.786250059
BRL 2018 3 3.1932 0.313165477
CAD 2018 3 1.2368 0.808538163
EUR 2018 3 0.852406 1.173149884
GBP 2018 3 0.747077 1.338550109
GHS 2018 3 4.4 0.227272727
I want to create a column in deals that converts deals where deals['Currency'] != USD, and apply the currency_rate['to_usd_rate'] to deals['Deal_Amount'] to get the USD converted amount.
So far i tried
def convert_amount(data):
if data['Currency']==currency_rates['currency_code']:
Converted_amount=data['Deal_Amount'] * currency_rates['to_usd_rate']
return Converted_amount
but its not working.
python pandas
I have two dataframes, deals
Currency Deal_Amount
0 USD 18.40
1 USD 18.40
2 USD 5559.00
3 USD 14300.00
4 USD 1000.00
5 EUR 3072.00
6 USD 500.00
7 CAD 100000.00
8 USD 250.00
15 EUR 6000.00
and currency_rates
currency_code year quarter from_usd_rate to_usd_rate
AED 2018 3 3.67285 0.27226813
ARS 2018 3 17.585 0.056866648
AUD 2018 3 1.27186 0.786250059
BRL 2018 3 3.1932 0.313165477
CAD 2018 3 1.2368 0.808538163
EUR 2018 3 0.852406 1.173149884
GBP 2018 3 0.747077 1.338550109
GHS 2018 3 4.4 0.227272727
I want to create a column in deals that converts deals where deals['Currency'] != USD, and apply the currency_rate['to_usd_rate'] to deals['Deal_Amount'] to get the USD converted amount.
So far i tried
def convert_amount(data):
if data['Currency']==currency_rates['currency_code']:
Converted_amount=data['Deal_Amount'] * currency_rates['to_usd_rate']
return Converted_amount
but its not working.
python pandas
python pandas
asked Nov 9 at 19:06
TH14
255
255
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
accepted
You can merge
and fillna
with 1 to use as new rate
A = df1.merge(df2, left_on='Currency', right_on='currency_code', how='left').fillna(1)
df1['converted'] = A['Deal_Amount']*A['to_usd_rate']
output
index Currency Deal_Amount converted
0 0 USD 18.4 18.400000
1 1 USD 18.4 18.400000
2 2 USD 5559.0 5559.000000
3 3 USD 14300.0 14300.000000
4 4 USD 1000.0 1000.000000
5 5 EUR 3072.0 3603.916444
6 6 USD 500.0 500.000000
7 7 CAD 100000.0 80853.816300
8 8 USD 250.0 250.000000
9 15 EUR 6000.0 7038.899304
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53231879%2fpython-pandas-create-usd-converted-column%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
accepted
You can merge
and fillna
with 1 to use as new rate
A = df1.merge(df2, left_on='Currency', right_on='currency_code', how='left').fillna(1)
df1['converted'] = A['Deal_Amount']*A['to_usd_rate']
output
index Currency Deal_Amount converted
0 0 USD 18.4 18.400000
1 1 USD 18.4 18.400000
2 2 USD 5559.0 5559.000000
3 3 USD 14300.0 14300.000000
4 4 USD 1000.0 1000.000000
5 5 EUR 3072.0 3603.916444
6 6 USD 500.0 500.000000
7 7 CAD 100000.0 80853.816300
8 8 USD 250.0 250.000000
9 15 EUR 6000.0 7038.899304
add a comment |
up vote
0
down vote
accepted
You can merge
and fillna
with 1 to use as new rate
A = df1.merge(df2, left_on='Currency', right_on='currency_code', how='left').fillna(1)
df1['converted'] = A['Deal_Amount']*A['to_usd_rate']
output
index Currency Deal_Amount converted
0 0 USD 18.4 18.400000
1 1 USD 18.4 18.400000
2 2 USD 5559.0 5559.000000
3 3 USD 14300.0 14300.000000
4 4 USD 1000.0 1000.000000
5 5 EUR 3072.0 3603.916444
6 6 USD 500.0 500.000000
7 7 CAD 100000.0 80853.816300
8 8 USD 250.0 250.000000
9 15 EUR 6000.0 7038.899304
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
You can merge
and fillna
with 1 to use as new rate
A = df1.merge(df2, left_on='Currency', right_on='currency_code', how='left').fillna(1)
df1['converted'] = A['Deal_Amount']*A['to_usd_rate']
output
index Currency Deal_Amount converted
0 0 USD 18.4 18.400000
1 1 USD 18.4 18.400000
2 2 USD 5559.0 5559.000000
3 3 USD 14300.0 14300.000000
4 4 USD 1000.0 1000.000000
5 5 EUR 3072.0 3603.916444
6 6 USD 500.0 500.000000
7 7 CAD 100000.0 80853.816300
8 8 USD 250.0 250.000000
9 15 EUR 6000.0 7038.899304
You can merge
and fillna
with 1 to use as new rate
A = df1.merge(df2, left_on='Currency', right_on='currency_code', how='left').fillna(1)
df1['converted'] = A['Deal_Amount']*A['to_usd_rate']
output
index Currency Deal_Amount converted
0 0 USD 18.4 18.400000
1 1 USD 18.4 18.400000
2 2 USD 5559.0 5559.000000
3 3 USD 14300.0 14300.000000
4 4 USD 1000.0 1000.000000
5 5 EUR 3072.0 3603.916444
6 6 USD 500.0 500.000000
7 7 CAD 100000.0 80853.816300
8 8 USD 250.0 250.000000
9 15 EUR 6000.0 7038.899304
answered Nov 9 at 19:24
Yuca
2,6192525
2,6192525
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53231879%2fpython-pandas-create-usd-converted-column%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown