【发布时间】:2022-01-09 18:04:23
【问题描述】:
这看起来很简单,但我就是想不通。
我有一个数据框,其中包含 GBpence、Euro 和 USD 的金额列。我需要一个以英镑为单位的新列,我能想到的唯一方法是首先将金额字段转换为字符串,将金额与货币符号分开,然后使用 numpy 执行条件计算。
df = pd.DataFrame({'date': ['2018-11-22','2018-11-23','2018-11-24'],
'amount': ['3.80p','$4.50','\N{euro sign}3.40'],
'usd-gbp':['0.82','0.83','0.84'],
'eur-gbp':['0.91','0.92','0.93']})
我正在尝试将金额列转换为字符串,以便提取货币和浮动金额,但它只是将所有行转换为相同的字符串。
df['new'] = str(df['amount'])
预期的输出只是字符串格式的数量值,因此我可以对它们执行切片。
任何帮助将不胜感激。谢谢。
【问题讨论】:
-
请在您的问题中包含预期的输出。