提取价格文本Pandas



我从一个网站上提取了有关房价的数据,然而,价格列有诸如"报价超过$790,00"我想能够提取价格,我试过了

test={'Price':['$593,000','$320,000+ price range','Offers Over $795,000'],'Bedrooms':['3','2','1']}
Houses=pd.DataFrame(test)
Houses['Price'].str.extract(pat='([$].)')

但是,这只提取$和第一个数字,而不提取整个数字。

这里应该使用的一般正则表达式模式是:

$d{1,3}(?:,d{3})*b

演示Python代码:

Houses['Amount'] = Houses['Price'].str.extract(pat=r'$(d{1,3}(?:,d{3})*)b')

如果您可能需要满足包含十进制成分的房价,那么只需使用此正则表达式:

$d{1,3}(?:,d{3})*(?:.d+)?b

相关内容

  • 没有找到相关文章

最新更新