python从PDF中提取数据的示例


Posted in Python onOctober 30, 2020

01

前言

数据是数据科学中任何分析的关键,大多数分析中最常用的数据集类型是存储在逗号分隔值(csv)表中的干净数据。然而,由于可移植文档格式(pdf)文件是最常用的文件格式之一,因此每个数据科学家都应该了解如何从pdf文件中提取数据,并将数据转换为诸如“csv”之类的格式,以便用于分析或构建模型。

在本文中,我们将重点讨论如何从pdf文件中提取数据表。类似的分析可以用于从pdf文件中提取其他类型的数据,如文本或图像。我们将说明如何从pdf文件中提取数据表,然后将其转换为适合于进一步分析和构建模型的格式。我们将给出一个实例。

python从PDF中提取数据的示例

02

示例:使用Python从PDF文件中提取一个表格

a)将表复制到Excel并保存为table_1_raw.csv

python从PDF中提取数据的示例

数据以一维格式存储,必须进行重塑、清理和转换。

b)导入必要的库

import pandas as pd
import numpy as np

c)导入原始数据,重新定义数据

df=pd.read_csv("table_1_raw.csv", header=None)
df.values.shape
df2=pd.DataFrame(df.values.reshape(25,10))
column_names=df2[0:1].values[0]
df3=df2[1:]
df3.columns = df2[0:1].values[0]
df3.head()

python从PDF中提取数据的示例

d)使用字符串处理工具进行数据纠缠

我们从上面的表格中注意到,x5、x6和x7列是用百分比表示的,所以我们需要去掉percent(%)符号:

df4['x5']=list(map(lambda x: x[:-1], df4['x5'].values))
df4['x6']=list(map(lambda x: x[:-1], df4['x6'].values))
df4['x7']=list(map(lambda x: x[:-1], df4['x7'].values))

e)将数据转换为数字形式

我们注意到列x5、x6和x7的列值数据类型为string,因此我们需要将它们转换为数值数据,如下所示:

df4['x5']=[float(x) for x in df4['x5'].values]
df4['x6']=[float(x) for x in df4['x6'].values]
df4['x7']=[float(x) for x in df4['x7'].values]

f)查看转换数据的最终形式

df4.head(n=5)

python从PDF中提取数据的示例

g)导出最终数据到一个csv文件

df4.to_csv('table_1_final.csv',index=False)

以上就是python从PDF中提取数据的示例的详细内容,更多关于python 提取PDF数据的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python标准库之循环器(itertools)介绍
Nov 25 Python
Python中urllib2模块的8个使用细节分享
Jan 01 Python
Python实现删除文件但保留指定文件
Jun 21 Python
python结合API实现即时天气信息
Jan 19 Python
快速了解Python中的装饰器
Jan 11 Python
基于tensorflow加载部分层的方法
Jul 26 Python
解决keras模型保存h5文件提示无此目录问题
Jul 01 Python
python3代码中实现加法重载的实例
Dec 03 Python
Python Django 后台管理之后台模型属性详解
Apr 25 Python
Python基础知识学习之类的继承
May 31 Python
opencv用VS2013调试时用Image Watch插件查看图片
Jul 26 Python
基于Python实现将列表数据生成折线图
Mar 23 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
Oct 30 #Python
python boto和boto3操作bucket的示例
Oct 30 #Python
python 多进程和协程配合使用写入数据
Oct 30 #Python
python打包生成so文件的实现
Oct 30 #Python
pytorch 移动端部署之helloworld的使用
Oct 30 #Python
把Anaconda中的环境导入到Pycharm里面的方法步骤
Oct 30 #Python
Python模拟登录和登录跳转的参考示例
Oct 30 #Python
You might like
PHP中使用smarty生成静态文件的例子
2014/04/24 PHP
php使用cookie实现记住用户名和密码实现代码
2015/04/27 PHP
激活 ActiveX 控件
2006/10/09 Javascript
mailto的使用技巧分享
2012/12/21 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
2013/04/10 Javascript
jQuery插件Tooltipster实现漂亮的工具提示
2015/04/12 Javascript
详解Javascript中的Object对象
2016/02/28 Javascript
BootStrap3学习笔记(一)之网格系统
2016/05/20 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
vue组件开发之用户无限添加自定义填写表单的方法
2018/08/28 Javascript
Angular2 自定义表单验证器的实现方法
2018/12/14 Javascript
微信小程序登录对接Django后端实现JWT方式验证登录详解
2019/07/29 Javascript
浅谈vue中使用编辑器vue-quill-editor踩过的坑
2020/08/03 Javascript
实用的 vue tags 创建缓存导航的过程实现
2020/12/03 Vue.js
Python实现的简单文件传输服务器和客户端
2015/04/08 Python
python创建一个最简单http webserver服务器的方法
2015/05/08 Python
Python脚本文件打包成可执行文件的方法
2015/06/02 Python
Python编程中的for循环语句学习教程
2015/10/14 Python
Python字符编码判断方法分析
2016/07/01 Python
Python 判断是否为质数或素数的实例
2017/10/30 Python
Python线程同步的实现代码
2018/10/03 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
Python Pexpect库的简单使用方法
2019/01/29 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
马来西亚银饰品牌:JEOEL
2017/12/15 全球购物
美国市场上最实惠的送餐服务:Dinnerly
2018/03/18 全球购物
英国假睫毛购买网站:FalseEyelashes.co.uk
2018/05/23 全球购物
英国领先的维生素和补充剂品牌:Higher Nature
2019/08/26 全球购物
初中生物教学反思
2014/01/10 职场文书
2014政务公开实施方案
2014/02/19 职场文书
车辆年审委托书范本
2014/09/18 职场文书
2014政府领导班子对照检查材料思想汇报(3篇)
2014/09/26 职场文书
网络营销计划书
2015/01/17 职场文书
谢师宴学生答谢词
2015/09/30 职场文书
Html5同时支持多端sdk的小技巧
2021/11/17 HTML / CSS
日元符号 ¥
2022/02/17 杂记