嗨,我有一个数据集,其中有一列包含文本和多个数字,我想从列中提取一个特定数字并用它创建一个新数字。
客户出售外币产生的存款 165.22 美元,汇率为 ** 19.650000 **
这就是我在该列每一行的文字,我只对汇率感兴趣。另一个问题是,并非每一行都有它,所以当该行没有汇率时,我想使用另一列中已经设置为浮点数的数字
嗨,我有一个数据集,其中有一列包含文本和多个数字,我想从列中提取一个特定数字并用它创建一个新数字。
客户出售外币产生的存款 165.22 美元,汇率为 ** 19.650000 **
这就是我在该列每一行的文字,我只对汇率感兴趣。另一个问题是,并非每一行都有它,所以当该行没有汇率时,我想使用另一列中已经设置为浮点数的数字
您可以str.extract
与捕获组一起使用:
df["curr"] = df["text"].str.extract(r'(\d+(?:\.\d+)?) [A-Z]{2,}')
这是一个正则表达式演示,显示逻辑正在运行。