小小小幸运 发表于 3 天前

Python常用的第三方模块之数据分析【pdfplumber库、Numpy库、Pandas库、Matplotlib库】

【pdfplumber库】从PDF文件中读取内容 

https://i-blog.csdnimg.cn/direct/5b7d44ec52684b1e8cf53bedaa0a98f1.png
import pdfplumber
#打开PDF文件
with pdfplumber.open('DeepSeek从入门到精通(20250204).pdf') as pdf:
    for i in pdf.pages: #遍历页
      print(i.extract_text()) #extract_text()方法提取内容
      print(f'----------------第{i.page_number}页结束') https://i-blog.csdnimg.cn/direct/c11c7cc026aa4bd8850bd427dc57c69d.png【Numpy库】数据分析处理数据、矩阵等数据

示例:图像的灰度处理
import numpy as np
import matplotlib.pyplot as plt
#读取图片
n1=plt.imread('Google.jpg')
print(type(n1),n1) #数组,三位数组,最高纬度表示的是图像的高,次高纬度表示的是图像的宽,最低纬度颜色
plt.imshow(n1)

#编写一个灰度的公式
n2=np.array() #创建数组
#将数组n1(RGB)颜色值与数组n2(灰度公式固定值),进行点乘运算
x=np.dot(n1,n2)
#传入数组,显示灰度
plt.imshow(x,cmap='gray')
#显示图像
plt.show() <img alt=""src="https://i-blog.csdnimg.cn/direct/b9e07428723643cb81f234a2023c9c4e.png"/>
【Pandas库】数据分析、读取Excel

https://i-blog.csdnimg.cn/direct/ae11e95c26c746b8bc45e3a7851e7ace.png
示例:利用Pandas库读取Excel
import pandas as pd
import matplotlib.pyplot as plt

#Pandas库:数据分析、读取Excel;Matplotlib库:数据可视化,绘制饼图、柱形图、折线图等

#读取Excel文件
df=pd.read_excel('商品商品_20241212115850.xls', dtype=object)#dtype指定类型,解决pandas“读取整数带小数点”问题
print('读取Excel文件如下:')
print(df) 控制台Exce文件显示不全题目

https://i-blog.csdnimg.cn/direct/57b96a925d534c7aa5f391c34390033b.png

解决方案:读取Excel文件前,添加以下代码
#pd.set_option()进行设置解决显示不全问题
# 显示全部列
pd.set_option('display.max_columns', None)
# 显示全部行
pd.set_option('display.max_row', None)
# 设置数据的显示长度(解决自动换行)
pd.set_option('display.width', None)
  https://i-blog.csdnimg.cn/direct/a70933b0951a491ebc794d1ec7de478e.png
 【Matplotlib库】数据可视化,绘制饼图、柱形图、折线图等

示例:利用Matplotlib库绘制饼图
import pandas as pdimport matplotlib as mplimport matplotlib.pyplot as plt# Pandas库:数据分析、读取Excel;Matplotlib库:数据可视化,绘制饼图、柱形图、折线图等#pd.set_option()进行设置解决显示不全问题
# 显示全部列
pd.set_option('display.max_columns', None)
# 显示全部行
pd.set_option('display.max_row', None)
# 设置数据的显示长度(解决自动换行)
pd.set_option('display.width', None)
#读取Excel文件df=pd.read_excel('商品商品_20241212115850.xls', dtype=object)#dtype指定类型,解决pandas“读取整数带小数点”题目print('读取Excel文件如下:')print(df)#设置画布的大小plt.figure(figsize=(10,6))goodsName=df['商品名称']stock=df['现实可贩卖库存数']print(goodsName)print(stock)#绘制饼图plt.pie(stock,labels=goodsName,autopct='%1.1f%%',startangle=90) #labels就是扇形当中所的标签,autopct是设置饼图每个部分所占比例,%1.1f%%保存一位小数的百分比格式,角度startangle(可提供可不提供,提供了饼图会比力漂亮)#设置x,y轴刻度plt.axis('equal')plt.title('4月份商品剩余库存占比图')#显示出来plt.show() 中文乱码题目 

https://i-blog.csdnimg.cn/direct/3109c69a0184439da7e4b1d9c7b14268.png解决方案:读取Excel文件后,添加以下代码:
#解决matplotlib画图中文乱码问题
#1.下载中文字体SimHei,下载链接:http://139.199.170.86/downloads/SimHei.ttf
#2.安装SimHei字体到macOS,双击下载的字体文件,然后点击“安装字体”按钮。
#3.找到Matplotlib的字体目录
print('Matplotlib的字体目录:',mpl.get_data_path())
#4.找到Matplotlib的缓存目录
print('Matplotlib的缓存目录:',mpl.get_cachedir()) #/Users/用户名/.matplotlib
#5.终端删除这个缓存文件夹:rm -rf rm -rf /Users/用户名/.matplotlib/*

#6.Python脚本中配置Matplotlib使用新字体
plt.rcParams['font.sans-serif'] = ['SimHei']# 设置字体为SimHei
plt.rcParams['axes.unicode_minus'] = False# 解决负号显示问题 最终展示情况:
https://i-blog.csdnimg.cn/direct/f6dbfa1d7594470992076ac29c5d76d9.png


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Python常用的第三方模块之数据分析【pdfplumber库、Numpy库、Pandas库、Matplotlib库】