当前位置:   article > 正文

Python数据分析详解!超详细附实战案例_合同 数据分析 python

合同 数据分析 python

Python具有强大的数据处理和分析的功能,但是,想要提高Python数据分析技能,不仅要掌握Python基本语法和常用数据分析库,比如pandas、matplotlib、seaborn库等,还需要不断的实践来提个自己的Python应用技能。

提高Python数据分析实践技能的方法多种多样,根据作者多年应用Python进行数据分析的经验,可以分别从工作应用、书籍自学、数据社区这几个方面进行实践,相信通过这些途径来提高你的Python技能,一定能让你有所收获。

1. 工作应用实践


在工作中应用Python进行数据分析是提高实践技能的有效途径,并且,借助Python可以解决实际的工作问题,提高你的问题解决和工作效率,从而提升Python的技能应用。

在日常工作中,我们经常需要从各种来源获取和整理信息,PDF文档作为一种常见的信息载体,如何从PDF中批量提取所需信息并将其导入Excel,却是一个让人头疼的问题,比如下面需要批量提取PDF信息存为Excel,然后做统计分析。

某公司的食品采购合同如下,共计100份PDF合同,现需要提取合同中的“合同编号、甲方、乙方、品名、采购数量、采购单价、总价”这几个字段数据, 并将其保存为Excel,使用Python几行代码搞定。

首先,使用PyPDF2打开PDF文档,然后,循环遍历合同中的每一页信息,将遍历出来的信息打印出来,可以看到具体的字段信息内容。



`import re     import pandas as pd     import PyPDF2        # 打开PDF文件     with open(r'D:\系统桌面(勿删)\Desktop\PDF文件合并.pdf', 'rb') as file:         reader = PyPDF2.PdfFileReader(file)         num_pages = reader.numPages            # 通过每一页提取信息         info = []         for page_num in range(num_pages):             page = reader.getPage(page_num)             text = page.extractText()            print(text)`


  • 1
  • 2
  • 3
  • 4
  • 5

接下来使用正则表达式,将要提取的字段数据使用append函数合并起来,合并起来的数据为一个字典类型数据,pd.DataFrame() 可将字典数据保存为二维数据,df.to_excel导出为Excel形式的数据。



`import re
import pandas as pd     
import PyPDF2        # 打开PDF文件     
with open(r'D:\系统桌面(勿删)\Desktop\PDF文件合并.pdf', 'rb') as file:         
reader = PyPDF2.PdfFileReader(file)         
num_pages = reader.numPages            # 通过每一页提取信息         
info = []         
for page_num in range(num_pages):             
page = reader.getPage(page_num)            
 text = page.extractText()               # 使用正则表达式匹配所需信息            
  HT_No = re.findall(r'合同编号:\s*(.*)', text)           
   name1 = re.findall(r'甲方:\s*(.*)', text)           
   name2 = re.findall(r'乙方:\s*(.*)', text)          
    catege = re.findall(r'品名:\s*(.*)', text)        
       weight = re.findall(r'采购数量(斤):\s*(.*)', text)    
              price = re.findall(r'采购单价(元 /斤):\s*(.*)', text)     
                    price_sum = re.findall(r'总价(元):\s*(.*)', text)              # 将信息添加到列表中             info.append({'合同编号': HT_No[0] if HT_No else '',                        '甲方': name1[0] if name1 else '',                        '乙方': name2[0] if name2 else '',                        '品名': catege[0] if catege else '',                        '采购数量': weight[0] if weight else '',                        '采购单价': price[0] if price else '',                        '总价': price_sum[0] if price_sum else ''}                      )                # 将信息保存为Excel文件             df = pd.DataFrame(info)             df.to_excel(r'D:\系统桌面(勿删)\Desktop\数据提取.xlsx', index=False)`


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

借助Python可轻松实现批量提取PDF信息到Excel,然后对提取的信息就可以做数据分析,从而得出需要的数据结果。

2. 书籍自学实践


通过阅读相关的Python数据分析书籍,可以系统地学习数据分析基本知识,通过学习书籍中的案例和示例代码,加深对Python知识的理解和掌握,逐步提升自己的Python技能。

以《Python编程快速上手》这本书为例,该书不仅介绍Python语言的基础知识,而且还通过项目实践教会读者如何应用这些知识和技能,每章的末尾还提供了一些习题和深入的实践项目,帮助读者巩固所学的知识,附录部分提供了所有习题的解答。

比如,下面的实践项目是关于Excel数据操作的内容,需要使用Python代码来完成,在案例的前文都有相关的Python知识学习,对应的在每章的末尾布置实践项目习题,通过对习题的问题解决,刚好可以锻炼我们的Python应用技能。

创建程序multiplicationTable.py,从命令行接受数字N,在一个Excel 电子表格中创建一个N×N 的乘法表,使用Python可实现乘法表的创建。



 import argparse  
 import openpyxl        
    def create_multiplication_table(n):         # 创建一个新的Excel工作簿         
    workbook = openpyxl.Workbook()         
    sheet = workbook.active           # 设置表头        
     for i in range(1, n + 1):             
     sheet.cell(row=1, column=i, value=i)           # 填充乘法表         
     for i in range(2, n + 1):             for j in range(1, n + 1):                 
     sheet.cell(row=i, column=j, value=i * j)           # 保存工作簿到文件         
     workbook.save("multiplication_table.xlsx")            
     if __name__ == "__main__":         # 解析命令行参数         
     parser = argparse.ArgumentParser(description="创建一个N×N的乘法表")         
     parser.add_argument("n", type=int, help="乘法表的大小")         
     args = parser.parse_args()           # 创建乘法表         
     create_multiplication_table(args.n)`


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

3. 数据社区实践


数据分析社区里面有许多开源的Python数据集和代码库用于练习,并且,可以与众多数据分析爱好者交流和学习,通过在社区中解决案例问题,从而锻炼自己的Python数据分析技能,下面推荐几个比较实用的数据社区。

=========================================================================================================

  1. kaggle

一个全球性的数据竞赛平台,也是学习和交流数据技术的好地方,在这里,你可以找到很多公开的数据集和Python代码,帮助你学习和练习Python,相信这些练习会对你的Python技能有所提升。

在kaggle里面点击Datasets数据集,可以看到有各行各业的数据集,这部分数据集比较贴切实际的业务场景,可用于Python数据分析。

在Code代码这个项目下,拥有多个开源的代码库,比如常用的Python、R等,借助这些代码库的学习,可以加深对Python的应用和实践。

  1. 阿里云天池

这是阿里云创办的数据竞赛平台,类似于国内的Kaggle。它非常适合中国的数据分析爱好者,提供了许多与Python相关的课程和数据应用案例,你可以用这些案例数据来练习和提升你的Python技能。

阿里云天池里的数据集,同样,包含各行各业的数据集,与kaggle区别的是,阿里云天池里面的数据集多为国内应用数据,数据理解起来较为友好。

对于不同的案例数据,均可以使用Python进行分析和研究,通过对问题的理解、分析和解决,在实践过程中逐步提升Python数据分析能力。

  1. 和鲸社区

这是一个数据科学的开源社区,帮助大家交流和学习数据科学。很多人在这里分享他们的代码、数据集和案例,比较常见的开源代码有Python、R等,你可以用这些资源来快速提升你的数据科学技能。

和鲸社区里面包含的数据集均是比较新颖和热点的数据集,紧跟时下,比如,这里的“杭州第19届亚运会奖牌榜及奖牌明细数据集”就是近期比较热门的应用数据集。

与其他数据社区不同的是,和鲸社区支持Python代码在线运行,该功能极大方便我们写Python代码,点击在线分析即可使用该功能,更加方便Python的应用。

提高Python数据分析技能需不断地工作应用、书籍自学和数据社区实践,只有通过不断的实践和积累经验,才能逐渐提高自己的Python数据分析能力,如果你想进一步学习Python数据分析知识,可以关注我,持续分享数据分析知识~

---------------------------END---------------------------

题外话

当下这个大数据时代不掌握一门编程语言怎么跟的上时代呢?当下最火的编程语言Python前景一片光明!如果你也想跟上时代提升自己那么请看一下.

在这里插入图片描述

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/625933
推荐阅读
相关标签