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

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

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}页结束')

【Numpy库】数据分析处理数据、矩阵等数据

示例:图像的灰度处理

import numpy as np
import matplotlib.pyplot as plt
#读取图片
n1=plt.imread('Google.jpg')
print(type(n1),n1) #数组,三位数组,最高纬度表示的是图像的高,次高纬度表示的是图像的宽,最低纬度[R,G,B]颜色
plt.imshow(n1)#编写一个灰度的公式
n2=np.array([0.299,0.587,0.114]) #创建数组
#将数组n1(RGB)颜色值与数组n2(灰度公式固定值),进行点乘运算
x=np.dot(n1,n2)
#传入数组,显示灰度
plt.imshow(x,cmap='gray')
#显示图像
plt.show()

【Pandas库】数据分析、读取Excel

示例:利用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文件显示不全问题

解决方案:读取Excel文件前,添加以下代码

#pd.set_option()进行设置解决显示不全问题
# 显示全部列
pd.set_option('display.max_columns', None)
# 显示全部行
pd.set_option('display.max_row', None)
# 设置数据的显示长度(解决自动换行)
pd.set_option('display.width', None)

  

 【Matplotlib库】数据可视化,绘制饼图、柱形图、折线图等

示例:利用Matplotlib库绘制饼图

import pandas as pd
import matplotlib as mpl
import 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()

中文乱码问题 

解决方案:读取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  # 解决负号显示问题

最终展示情况:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/78361.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

长短板理论——AI与思维模型【83】

一、定义 长短板理论思维模型,也被称为木桶原理,是指一只木桶能盛多少水,并不取决于最长的那块木板,而是取决于最短的那块木板。该理论将木桶视为一个整体系统,各个木板代表着系统的不同组成部分或要素,强…

2025蓝桥省赛c++B组第二场题解

前言 这场的题目非常的简单啊,至于为什么有第二场,因为当时河北正在刮大风被迫停止了QwQ,个人感觉是历年来最简单的一场,如果有什么不足之处,还望补充。 试题 A: 密密摆放 【问题描述】 小蓝有一个大箱子&#xff0…

【数据结构与算法】从完全二叉树到堆再到优先队列

完全二叉树 CBT 设二叉树的深度为 h , 若非最底层的其他各层的节点数都达到最大个数 , 最底层 h 的所有节点都连续集中在左侧的二叉树叫做 完全二叉树 . 特点 对任意节点 , 其右分支下的叶子节点的最底层为 L , 则其左分支下的叶子节点的最低层一定是 L 或 L 1 .完全二叉树…

Leetcode:1. 两数之和

题目 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。 你可以按任意顺序返回答案。 示…

flume整合kafka

需求一: 启动flume 启动kafka消费者,验证数据写入成功 新增测试数据 需求二: 启动Kafka生产者 启动Flume 在生产者中写入数据

Hbase集群管理与实践

一、HBase集群搭建实战 1.1 环境规划建议 硬件配置基准(以10节点集群为例): 角色CPU内存磁盘网络HMaster4核16GBSSD 200GB(系统盘)10GbpsRegionServer16核64GB124TB HDD(JBOD)25GbpsZooKeeper4核8GBSSD 500GB10Gbps1.2 关键配置项示例(hbase-site.xml) <configu…

STM32 开发 - stm32f10x.h 头文件(内存映射、寄存器结构体与宏、寄存器位定义、实现点灯案例)

概述 STM32F10x.h 是 STM32F1 系列微控制器的核心头文件&#xff0c;提供了所有外设寄存器的定义和内存映射 一、内存映射 #define PERIPH_BASE ((uint32_t)0x40000000)#define APB1PERIPH_BASE PERIPH_BASE #define APB2PERIPH_BASE (PERIPH_BASE 0x…

QEMU源码全解析 —— 块设备虚拟化(23)

接前一篇文章:QEMU源码全解析 —— 块设备虚拟化(22) 本文内容参考: 《趣谈Linux操作系统》 —— 刘超,极客时间 《QEMU/KVM源码解析与应用》 —— 李强,机械工业出版社 特此致谢! QEMU启动过程中的块设备虚拟化 上一回解析了qcow2格式对应的qcow2_open函数,本回解…

【PCB工艺】推挽电路及交越失真

推挽电路(Push-Pull Circuit) 推挽电路(Push-Pull Circuit) 是一种常用于功率放大、电机驱动、音频放大等场合的电路结构,具有输出对称、效率高、失真小等优点。 什么是推挽电路? 推挽是指:由两种极性相反的器件(如 NPN 和 PNP、NMOS 和 PMOS)交替导通,一个“推”电…

RD电子实验记录本选用贴士A-B-C

传统的实验记录本&#xff0c;令人又爱又恨本 如何挑选电子实验室记录本&#xff08;ELN&#xff09;的品牌/服务商/供应商&#xff1f; 电子实验记录本&#xff0c;又名为ELN&#xff0c;Electronic lab notebook&#xff0c;enotebook&#xff0c;研发电子管理系统&#xf…

Qt实战之将自定义插件(minGW)显示到Qt Creator列表的方法

Qt以其强大的跨平台特性和丰富的功能&#xff0c;成为众多开发者构建图形用户界面&#xff08;GUI&#xff09;应用程序的首选框架。而在Qt开发的过程中&#xff0c;自定义插件能够极大地拓展应用程序的功能边界&#xff0c;让开发者实现各种独特的、个性化的交互效果。想象一下…

java基础之枚举和注解

枚举 简介 枚举&#xff1a;enumeration&#xff0c;jdk1.5中引入的新特性&#xff0c;用于管理和使用常量 入门案例 第一步&#xff1a;定义枚举&#xff0c;这里定义一个动物类&#xff0c;里面枚举了多种动物 public enum AnimalEnum {CAT, // 猫DOG, // 狗PIG // …

2.3java运算符

运算符 1. 算术运算符 算术运算符用于执行基本的数学运算&#xff0c;像加、减、乘、除等。 运算符描述示例加法int a 5 3; // a 的值为 8-减法int b 5 - 3; // b 的值为 2*乘法int c 5 * 3; // c 的值为 15/除法int d 6 / 3; // d 的值为 2%取模&#xff08;取余&…

升级 Spring Boot CLI

&#x1f31f; 升级 Spring Boot CLI 1️⃣ &#x1f504; 通过包管理器升级 使用对应包管理器命令&#xff08;如 brew upgrade&#xff09; 2️⃣ &#x1f4e5; 手动安装升级 遵循 标准安装说明 注意更新 PATH 环境变量移除旧版本路径 &#x1f517; 链接原文&#xff1a…

如何轻松将RS232转为Profibus DP,提升PLC效率?

如何轻松将RS232转为Profibus DP&#xff0c;提升PLC效率&#xff1f; 今天&#xff0c;我们就来聊聊一个工业自动化中常见的应用场景&#xff1a;如何通过兴达易控RS232转Profibus DP网关&#xff0c;实现流量泵与PLC&#xff08;可编程逻辑控制器&#xff09;的通信。这个话…

QT 连接数据库操作(15)

文章目录 一、本章说明二、QT连接云端数据库实现2.1 ODBC软件安装及参数设置2.2 软件代码实现三、项目源码文件一、本章说明 注:本节为【基于STM的环境监测系统(节点+云服务器存储+QT界面设计)】项目第15篇文章,前面已经创建了监测软件的登录窗口,接下来我们将在主窗口实…

linux系统之----命令行参数和环境变量

一、命令行参数 1.main()函数的参数 在C语言中&#xff0c;main函数可以接收命令行参数&#xff0c;其标准形式为&#xff1a; int main(int argc, char *argv[]) {// 程序代码return 0; } 这里我们解释一下&#xff1a; argc&#xff1a;参数个数计数器&#xff08;Argum…

解析excel中的图片

解析excel中的图片 前言一、pom依赖二、使用步骤1.示例数据2.代码如下&#xff08;示例&#xff09;&#xff1a; 总结 前言 初始化数据是&#xff0c;需要将excel中的数据解析并插入数据库。 但是某几列存放的是图片&#xff0c;这时候怎么办呢。 主要解决的是&#xff1a;获…

Unity任务系统笔记

数据结构设计 任务基类包括的字段&#xff1a; string 任务内容&#xff1b; Transform 任务目的地&#xff1b; MyCharacter 任务开启后要更新对话的NPC&#xff1b; MyTalkData 任务开启后相关NPC要说的对话数据&#xff1b; 共同方法&#xff1a;开启任务、完成任务。…

STM32的开发环境介绍

目录 STM32软件环境 Keil软件在线安装 其他软件环境安装 STM32开发的几种方式 STM32寄存器版本和库函数版本 标准外设库的作用&#xff1a; STM32软件环境 STM32 的集成开发环境&#xff08;IDE&#xff09;&#xff1a;编辑编译软件 常见的环境&#xff1a; (1)KEIL&a…