[英]Need to compare two columns from two dataframes in pandas
我需要比较两个数据帧之间的第一列值,并通过将该值与第二个 dataframe 的第二列相乘来更改第二列的值
数据框1
Money Currency
34 USD
31 EUR
20 JPY
数据框2
Curr Value
EUR 1.21
JPY 0.78
我的预期 output
Money Currency
34 USD
37.51(31*1.21) USD
15.6(20*0.78) USD
提前致谢
将Series.map
与第二个 DataFrame 和fill_value
的倍数一起使用(如果样本数据中没有像USD
那样的匹配值,则存在Series.mul
for multiple by 1
,因此创建了缺失值):
s = dataframe2.set_index('Curr')['Value']
dataframe1['Money'] = dataframe1['Currency'].map(s).mul(dataframe1['Money'], fill_value=1)
dataframe1['Currency'] = 'USD'
print (dataframe1)
Money Currency
0 34.00 USD
1 37.51 USD
2 15.60 USD
详情:
print (dataframe1['Currency'].map(s))
0 NaN
1 1.21
2 0.78
Name: Currency, dtype: float64
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.