免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 18158 | 回复: 21

如何从文档中提取实体和数据 [复制链接]

论坛徽章:
0
发表于 2019-03-27 16:00 |显示全部楼层
从图片所示文档中提取类似经费方面的数据,比如 科技活动经费 筹集 1460.6亿元       增加  170.9亿元 增长率 2.5%  这之类的数据

微信图片_20190327155711.png

统计公报.zip (20.05 KB, 下载次数: 18)

论坛徽章:
0
发表于 2019-03-28 15:06 |显示全部楼层
无人知晓?

论坛徽章:
0
发表于 2019-04-01 15:22 |显示全部楼层

论坛徽章:
0
发表于 2019-04-09 15:00 |显示全部楼层

论坛徽章:
8
2016科比退役纪念章
日期:2018-10-24 08:24:0115-16赛季CBA联赛之北控
日期:2019-03-12 14:34:562016科比退役纪念章
日期:2019-04-01 10:33:0915-16赛季CBA联赛之山东
日期:2019-04-17 12:46:3215-16赛季CBA联赛之广夏
日期:2019-05-09 16:40:4015-16赛季CBA联赛之广夏
日期:2019-10-10 15:33:4015-16赛季CBA联赛之辽宁
日期:2019-10-15 08:37:0615-16赛季CBA联赛之北控
日期:2021-03-30 15:53:34
发表于 2019-04-22 14:43 |显示全部楼层
本帖最后由 cfwyy 于 2019-04-22 14:46 编辑

光提取数字好说,问题是你没有给出实体精确的定义,怎么去严格认定哪些字,从哪到哪是你想要的实体?

观察样本,我先姑且粗略的认为数值前面可能有汉字,别的数字,字母,()(),
数值大概有两种 一种是***.*(亿,万)元
一种是**.*%
所以我直接用grep匹配,前提是docx文件要转成纯文本。
不知是否能满足你的要求。

  1. $ grep -Po '[A-Z\d\(\)()&\p{Han}]+(\d+(\.\d)?(亿元|亿|万元|元)|\d{1,2}(\.\d{1,2})?%(?!、)|:?(\d{1,2}(\.\d{1,2})?%、){1,2}\d{1,2}(\.\d{1,2})?%和\d{1,2}(\.\d{1,2})?%)' file.txt
复制代码

结果:
  1. 研究与试验发展(R&D)经费支出占国内生产总值(GDP)的比重首次超过0.8%
  2. 1999年全国共筹集科技活动经费1460.6亿元
  3. 比上年增加170.9亿元
  4. 同口径增长12.5%
  5. 按总人口计算的全国人均科技活动经费筹集额116元
  6. 比上年增加12.7元
  7. 1999年国家财政科技拨款额达543.9亿元
  8. 比上年增加105.3亿元
  9. 实际增长26.8%
  10. 科技拨款占国家财政支出的比重为4.1%
  11. 其中中央财政科技拨款占中央财政支出的比重为8.6%
  12. 地方财政科技拨款占地方财政支出的比重为2.1%
  13. 1999年科技活动经费支出总额为1284.9亿元
  14. 比上年增加156.5亿元
  15. 同口径增长13%
  16. 企业支出654.6亿元
  17. 比上年同口径增长16.6%
  18. 研究与开发机构支出496.9亿元
  19. 增长9.4%
  20. 高等学校支出85.1亿元
  21. 增长16.3%
  22. 各执行部门支出占全部科技经费支出的比重分别为50.9%、38.7%和6.6%
  23. ......
复制代码


评分

参与人数 1信誉积分 +9 收起 理由
laoliuya + 9 很给力!

查看全部评分

论坛徽章:
0
发表于 2019-04-28 16:02 |显示全部楼层
cfwyy 发表于 2019-04-22 14:43
光提取数字好说,问题是你没有给出实体精确的定义,怎么去严格认定哪些字,从哪到哪是你想要的实体?观察样 ...

这事难就难在这里。谢谢大佬的指点,这个结果虽然不是100%符合要求,但是很有用,我好好学习一下代码!

论坛徽章:
0
发表于 2019-04-28 16:34 |显示全部楼层
回复 5# cfwyy

这段正则表达示挺复杂,而且应该不是Python代码,以我的水平比较难理解,求讲解

论坛徽章:
0
发表于 2019-04-28 17:52 |显示全部楼层
laoliuya 发表于 2019-04-28 16:02
这事难就难在这里。谢谢大佬的指点,这个结果虽然不是100%符合要求,但是很有用,我好好学习一下代码!

上面的图片,你到底想抓出什么?抓的规则是什么?

论坛徽章:
0
发表于 2019-04-28 18:04 |显示全部楼层
dahe_1984 发表于 2019-04-28 17:52
上面的图片,你到底想抓出什么?抓的规则是什么?


实体和数据一起就行了,
比如  科技活动经费1460.6亿元 增加170.9亿元 增长12.5%

论坛徽章:
0
发表于 2019-04-28 19:00 |显示全部楼层
5楼的哪里不对?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP