如何使用Python中的NLP技术从非结构化文本数据中解析和提取与价格相关的信息?

时间:2018-01-12 07:09:30

标签: python nlp nltk text-processing information-retrieval

我想从非结构化文本中提取实际价格和折扣价格;以下是该输入文本的一些(模拟)样本:

  
      
  1. 根据用户评级,我们建议从初始价格为100卢比的折扣提供25卢比。这是   提供与客户建立长期关系。
  2.   
  3. 为了更好的关系,我们建议将客户的产品价格从卢比增加到2000卢比。总折扣   案例是Rs.5000
  4.   
  5. 如前所述,成本可以从初始价格Rs.22000减少5%。这导致总折扣为Rs.1100
  6.   

上述3篇文章中我想要的输出是这样的:

No ActualPrice  Discount
1 10000         2500
2 20000         5000
3 22000         1100

我已经使用了一些正则表达式来提取数量,但由于数据是以非结构化的方式,因为模式不一致,正则表达式没有多大帮助。 是否有任何NLP方式来处理Python中的这些场景?我对基本的NLP技术(标记化,ngrams,POS标记,删除词,删除等)有所了解。

1 个答案:

答案 0 :(得分:0)

s = 'Based on the user rating we recommend to offer the product with a discount of Rs.2500 from an initial price of Rs.10000.This was provided to establish long term relationship with the customers." I want to extract Rs.10000 and Rs.2500. from next text "For better relationship we recommend to reduce the product price for the customer to Rs.15000 from Rs.20000. Total discount for the case is Rs.5000" I want to extract Rs.20000 and Rs.5000'

import re
results = re.findall('\d+',s)

从本文“根据用户评级,我们建议从初始价格为100卢比的折扣提供25卢比。这是为了与客户建立长期关系。”我想提取Rs.10000和Rs.2500。从下一篇文章“为了更好的关系,我们建议将客户的产品价格从Rs.20000减少到15000卢比。案件的总折扣是5000卢比”我想提取Rs.20000和Rs.5000