gpt4 book ai didi

machine-learning - 如何在python中提取文本文件中不同格式的特征?

转载 作者:行者123 更新时间:2023-11-30 09:42:36 25 4
gpt4 key购买 nike

我有几个公司发票的文本文件,它们具有不同类型的日期格式

日/月/年

月:日:年

dd,月份名称,yy

年、月、日

等等。有很多独特的图案无法在此列出。

问题是我一直在使用正则表达式和(主要)if else 字符串匹配的混合来查找这些日期,但我确信有更好的方法来识别它们,而不是对程序进行硬编码以查找不同的模式

我还想提取其他功能,例如“TOTAL”金额,其格式也类似于

总计123 美元

总计 123 美元

$123总计

总计 123 美元

这里是一些示例文本文件

Demo Company INVOICE
Demo Company Phone : 141-222-3333 Invoice# 1024
1234 Main Street Fax: 222-3984444 Account# C1000
Ashland, KY 41102 Email : sales@example.com
Date 01-08-2009
Due By 02-05-2009
‘Subtotal $212.44
Tax $1.25
Total $213.69
Balance Due $213.69

SAMPLE PURCHASE ORDER
ToNGE
Purchase Order Number 2
FROM: Purchase Order Date 6:15:2
Your Company
1122 Cherry Lane
San Diego, CA 92176
1 | MH1000 | MATHOIST STORAGE SYSTEMFOR (@)45°x $8920.00 | $8,920.00
MATS (see product description)
1 [NA Mat Hoist Voltage??? 208V, 230V or 460V Nec Nec
6 |cL7 CL-7 UNIT CLAMP
SA8.75 $292.50
123 Anywhere St.
Some City, CA 91000
Phone (555) 555-1212 Fax (555) 555-5555
P.O. NUMBER: 1234
P.O. DATE: 4/15/13
SUBTOTAL $3000
SALES TAX $s 240
TOTAL $3240

这是我用于日期提取和总提取的代码

def extractdate():
with open(inpf, "r") as ifile:
for line in ifile:
if line.startswith("DATE"):
print(next(ifile, '').strip())
elif line.startswith("P.O. DATE"):
if "P.O. DATE" in line:
# print(line)
print('')
elif str("Date") in line:
# print(line)
print('')
elif str("date")in line:
# print(line)
print('')

def totalamount():
with open(inpf, "r") as ifile:
for line in ifile:
if 'TOTAL' in line or 'Total' in line:
s = ""
for i in range(len(line)):
if line[i].isdigit():
s += line[i]
elif not line[i].isdigit() and line[i-1].isdigit():
break

有什么方法可以使用机器学习并训练模型来提取这些特征?

最佳答案

这对 NLP 来说还不是问题。您需要查找两类数据:日期和总金额。有很多查找和解析各种日期时间格式的引用资料;您需要研究这些,具体取决于您想要使用的解析形式。正则表达式或内置解析包通常是最简单的。

另一个很简单:您正在寻找包含单词“total”和“$”的行。当这两者都存在于行中时,只需获取“$”旁边的小数部分即可。

鉴于这是已知解决方案的两个问题,使用机器学习有点矫枉过正。

关于machine-learning - 如何在python中提取文本文件中不同格式的特征?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56856258/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com