Pandas操作Excel
Pandas 是 Python 语言的一个扩展程序库,用于数据分析。
菜鸟教程:https://www.runoob.com/pandas/pandas-tutorial.html

读取Excel
- pd.read_excel(path,sheet_name,header)
- path:excel文件路径
- sheet_name:读取的sheet,可以为sheet名或数字,默认第1个sheet
- header:表头行,默认为0,代表第1行为表头
读取并打印excel
import pandas as pd
data = pd.read_excel("data.xlsx")
print(data)

获取行索引和列名
- data.index:显示所有行索引
- data.columns:显示所有列名
- data.shape:显示数据的行数和列数。
- data.shape[0]:行数
- data.shape[1]:列数
import pandas as pd
data = pd.read_excel("data.xlsx")
print(data.index.values) # 显示所有行索引:[0 1 2 3 4]
print(len(data.index)) # 显示行数:5
print(data.columns.values) # 显示所有列名:['班级' '序号' '姓名']
print(len(data.columns)) # 显示列数:3
print(data.shape) # 显示元组行列数:(5,3)
获取行、列
- data[column_name]:选择指定的列;
- data.loc[row_index, column_name]:根据行索引和列名选择,若只有一个参数,代表选择指定的行;
- data.head(n):显示前 n 行数据;
- data.tail(n):显示后 n 行数据;
- data.sample(n):随机选择 n 行数据。
import pandas as pd
data = pd.read_excel("data.xlsx")
"""获取列"""
print(data["姓名"]) # 获取单列,类型为Series
print(data["姓名"].values) # 输出:['解叮叮' '许世亮' '王者' '蒋建国' '宋艺然']
print(data[["姓名","班级"]]) # 获取多行,类型为DataFrame
print(data[["姓名","班级"]].values) # 二位列表
print(data.head(2)) # 获取前两行
print(data.tail(2)) # 获取后两行
print(data.sample(2)) # 随机选择2行
"""获取行"""
print(data.loc[0]) # 获取单行,类型为Series
print(data.loc[0].values)
获取单元格
- data.iloc[row_index, column_index]:根据行列数字索引选择,从行列均从0开始
import pandas as pd
data = pd.read_excel("data.xlsx")
"""以下输出均是:解叮叮"""
print(data.loc[0]["姓名"]) # 先行后列
print(data.loc[0,"姓名"])
print(data["姓名"][0]) # 先列后行
print(data.iloc[0,2]) # 选择代表第1行,第3列
修改数据
import pandas as pd
data = pd.read_excel("data.xlsx")
"""新增、修改行"""
data["班级"] = [2,3,4,5,6] # 修改
data["备注"] = "无" # 新增,值都为“无”
"""新增、修改列"""
data.loc[1] = [2,1002,"嘻嘻嘻"] # 修改
data.loc[len(data.index)] = [6,1006,"哈哈哈"] # 新增
data.loc[len(data.index)] = {"班级":7,"序号":1007,"姓名":"咻咻咻"} # 新增
"""修改单元格的值"""
data.loc[0,"姓名"] = "张三"
data.iloc[1,2] = "李四"
遍历所有值
import pandas as pd
data = pd.read_excel("data.xlsx")
"""先获取二维列表格式的值,然后遍历二维列表"""
for row in data.values: # 遍历所有行for value in row: # 遍历行的每列值print(value,end=",")print()
"""根据行索引和列名遍历"""
for row_index in data.index:for column_name in data.columns:print(data.loc[row_index, column_name],end=",")print()
"""根据行列的数字索引遍历"""
for i in range(data.shape[0]):for j in range(data.shape[1]):print(data.iloc[i, j],end=",")print()

写入Excel
- data.to_excel(excel_writer,sheet_name,index……)
- excel_writer:可以是文件路径或者excel对象。
- sheet_name:工作表名,默认“Sheet1”。添加多个sheet是必须指定,否则会发生覆盖。
- index:是否显示索引,True代表显示,False代表不显示,默认True。
单个sheet写入
import pandas as pd
data = pd.DataFrame({'One': [1, 2, 3]})
data.to_excel('test.xlsx',index=False)
多个sheet写入同一个Excel
import pandas as pd
data1 = pd.DataFrame({'One': [1, 2, 3]})
data2 = pd.DataFrame({'Two': [4, 5, 6]})
writer = pd.ExcelWriter('test.xlsx')
data1.to_excel(writer, sheet_name='Sheet1', index=False)
data2.to_excel(writer, sheet_name='Sheet2', index=False)
writer.close()
数据计算
- data.count():计算每列非缺失值的数量。
- data.mean():计算每列的平均值。
data = pd.read_excel(excel_path)
print(data["班级"].count())
print(data["班级"].mean())
print(data.groupby("班级").agg({'班级': 'count'})) # 以班级分组,显示各个班级人数
相关文章:
Pandas操作Excel
Pandas 是 Python 语言的一个扩展程序库,用于数据分析。 菜鸟教程:https://www.runoob.com/pandas/pandas-tutorial.html 读取Excel pd.read_excel(path,sheet_name,header) path:excel文件路径sheet_name:读取的sheet࿰…...
leetcode 712. Minimum ASCII Delete Sum for Two Strings(字符串删除字母的ASCII码之和)
两个字符串s1, s2, 删除其中的字母使s1和s2相等。 问删除字母的最小ASCII码之和是多少。 思路: DP 先考虑极端的情况,s1为空,那么要想达到s2和s1相等,就要把s2中的字母删完, ASCII码之和就是s2中所有字母的ASCII码之…...
Springboot -- 按照模板生成docx、pdf文件,docx转pdf格式
使用 poi-tl 根据模板生成 word 文件。 使用 xdocreport 将 docx 文件转换为 pdf 文件。 xdocreport 也支持根据模板导出 word ,但是 poi-tl 的功能更齐全,操作更简单,文档清晰。 poi-tl 、xdocreport 内部均依赖了 poi ,要注意两…...
UE5.1.1 创建C++项目失败
因一直使用Unity开发环境,安装Unreal后,并未详细配置过其开发环境,默认创建蓝图工程无异常,但创建UE C项目时总共遇到两个错误: 错误一 Running /Epic/UE/UE_5.1/Engine/Build/BatchFiles/Build.bat -projectfiles -…...
windows进行端口映射
windows进行端口映射 1. 查询端口映射情况 netsh interface portproxy show v4tov42. 查询某一个IP的所有端口映射情况 netsh interface portproxy show v4tov4 | find "[IP]" # 例: netsh interface portproxy show v4tov4 | find "192.168.1.1&quo…...
Python 异常处理
Python 异常处理 python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。 异常处理: 本站Python教程会具体介绍。断言(Assertions):本站Python教程会具体介绍。 python标准异常 异常名称描述BaseException所有异常的…...
C++ 类的静态成员
在结构化程序设计中程序模块的基本单位是函数,因此模块间对内存中数据的共享是通过函数与和函数之间的数据共享来实现的,其中包括两个途径——参数传递和全局变量。 面向对象的程序设计方法兼顾数据的共享和保护,将数据与操作数据的函数封装…...
360T7路由器进行WiFi无线中继教程
360T7路由器进行WiFi中继教程 1. 概述2. 360T7路由器进行WiFi中继实现教程2.1 登录路由器管理界面2.2 选择上网方式2.3 搜索WiFi2.4 连接WiFi2.5 点击确认2.6 在主页面查看网络 1. 概述 中继路由系统由一组中继路由器组成,为不能交换路由信息的路由域提供中继路由。…...
主成分分析
主成分分析 相关概念方差协方差协方差矩阵特征值和特征向量 主成分分析数据降维主成分分析原理主成分分析过程sklearn库中的PCA主成分分析实现案例 相关概念 方差 方差是一个用来衡量一组数据离散程度的统计量,它是各样本与样本均值的差的平方和的平均值。方差越大…...
笙默考试管理系统-MyExamTest(26)
笙默考试管理系统-MyExamTest(26) 目录 一、 笙默考试管理系统-MyExamTest 二、 笙默考试管理系统-MyExamTest 三、 笙默考试管理系统-MyExamTest 四、 笙默考试管理系统-MyExamTest 五、 笙默考试管理系统-MyExamTest 笙默考试管理系统-MyEx…...
重新理解 RocketMQ Commit Log 存储协议
最近突然感觉:很多软件、硬件在设计上是有 root reason 的,不是 by desgin 如此,而是解决了那时、那个场景的那个需求。一旦了解后,就会感觉在和设计者对话,了解他们的思路,学习他们的方法,思维…...
ES6基础知识十:你是怎么理解ES6中 Decorator 的?使用场景?
一、介绍 Decorator,即装饰器,从名字上很容易让我们联想到装饰者模式 简单来讲,装饰者模式就是一种在不改变原类和使用继承的情况下,动态地扩展对象功能的设计理论。 ES6中Decorator功能亦如此,其本质也不是什么高大…...
接口/Web自动化测试如何做?框架如何搭建封装?
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 自动化测试怎么做…...
Linux怎么从网络上下载文件
wget命令用于从网络上下载文件 下载文件: wget [URL]使用wget命令加上要下载的文件的URL,可以将文件下载到当前目录。 指定保存的文件名: wget -O [保存的文件名] [URL]使用-O选项后跟保存的文件名,可以指定下载的文件保存的名称…...
Flutter携带JSON参数post请求
在Flutter中发送带有JSON参数的网络请求,你可以使用HTTP库(如http或dio)来实现。以下是使用http库发送网络请求并携带JSON参数的示例: import package:http/http.dart as http; import dart:convert;// 创建参数Map Map<Strin…...
【vue】vue-image-lazy图片懒加载使用与介绍【超详细+npm包源代码】
简介 当前插件是基于vue3,写的一个图片懒加载,文章最下方是npm包的源码,你可以自己拿去研究和修改,如有更好的想法可以留言,如果对你有帮助,可以点赞收藏和关注,谢谢。 后续会添加图片放大和切…...
MFC第二十四天 使用GDI对象画笔和画刷来开发控件(分页控件选择态的算法分析、使用CToolTipCtrl开发动静态提示)
文章目录 GDI对象画笔和画刷来开发控件梯形边框的按钮控件CMainDlg.hCMainDlg.cppCLadderCtrl.hCLadderCtrl.cpp 矩形边框的三态按钮控件 CToolTipCtrl开发动静态提示CMainDlg.hCMainDlg.cppCLadderCtrl.hCLadderCtrl.cpp: 实现文件 矩形边框的三态按钮控件 CToolTipCtrl开发动…...
【NLP-新工具】语音转文本与OpenAI的用途
一、说明 OpenAI最近2022发布了一个名为Whisper的新语音识别模型。与DALLE-2和GPT-3不同,Whisper是一个免费的开源模型。它的主要功能就是将语音翻译成文本。本文将介绍如何使用这个重要应用库。 二、 Whisper概念 2.1 Whisper是啥? Whisper 是一种自动…...
try-catch-finally的字节码原理
Java 中有一个非常重要的内容是 try-catch-finally 的执行顺序和返回值问题,其中 finally 一定会执行,但是为什么会这样? 下面看下 try-catch-finally 背后的实现原理 try-catch public class Test {public static void main(String[] args)…...
基于双层优化的微电网系统规划设计方法(Matlab代码实现)
目录 💥1 概述 1.1 微电网系统结构 1.2 微电网系统双层规划设计结构 1.3 双层优化模型 1.4 上层容量优化模型 1.5 下层调度优化模型 📚2 运行结果 🎉3 文献来源 🌈4 Matlab代码、数据、文章讲解 💥1 概述 文献来源&…...
**发散创新:基于Python的虚拟原型快速构建实践与实战代码解析**
发散创新:基于Python的虚拟原型快速构建实践与实战代码解析 在现代软件开发流程中,虚拟原型(Virtual Prototype) 已成为产品设计前期验证的核心手段。它不仅加速了需求确认过程,还显著降低了后期返工成本。本文将深入…...
【水声信号处理】突破物理极限:下视多波束声呐超分辨率技术原理与公式详解
【水声信号处理】突破物理极限:下视多波束声呐超分辨率技术原理与公式详解 文章目录【水声信号处理】突破物理极限:下视多波束声呐超分辨率技术原理与公式详解一、 为什么我们需要“超分辨率”?(痛点分析)二、 声呐回波…...
RCS调度系统:从架构蓝图到智能协同的实战解析
1. RCS调度系统:现代仓储的智能大脑 想象一下,在一个数万平方米的智能仓库里,上百台AGV(自动导引车)正在同时穿梭。它们有的在搬运货架,有的在分拣包裹,还有的在自动充电。这些AGV既不会撞车&am…...
新手零基础入门:在快马平台用AI生成你的首个龙虾部署项目
新手零基础入门:在快马平台用AI生成你的首个龙虾部署项目 作为一个刚接触容器化开发的新手,第一次听说"龙虾部署"这个概念时,我完全摸不着头脑。后来才知道,这其实就是Docker容器化部署的一种形象说法。今天我想分享一…...
微软 Copilot 条款更新:功能拓展与合规管控并行
微软 Copilot 条款更新:明确适用范围与新增功能规则微软 Copilot 此次更新使用条款,明确了条款适用于某些 Copilot 服务和体验的具体情形。新增了关于 Copilot Actions、Copilot Labs 和购物体验的条款,还修订了行为准则,清晰界定…...
Graphormer实际作品分享:10个典型分子(CCO/c1ccccc1/C=O等)预测结果集
Graphormer实际作品分享:10个典型分子预测结果集 1. 模型介绍与核心能力 Graphormer是一种基于纯Transformer架构的图神经网络,专门为分子图(原子-键结构)的全局结构建模与属性预测而设计。这个模型在OGB(Open Graph Benchmark)和PCQM4M等分子基准测试…...
实战应用:用快马平台将dc=y103pc=参数转化为电商筛选功能
今天想和大家分享一个在电商项目中特别实用的功能开发经验——如何把URL参数(比如dcy103&pchigh这种格式)转化成用户友好的商品筛选面板。这个需求在实际业务中特别常见,比如用户分享一个筛选好的商品列表链接,其他人打开时能…...
SM4算法在嵌入式平台的轻量化移植与优化实践
1. SM4算法与嵌入式平台适配挑战 SM4作为我国自主设计的商用分组密码标准,在物联网设备安全领域应用广泛。但直接将OpenSSL中的SM4实现移植到STM32等嵌入式平台时,开发者常会遇到三大难题: 代码体积膨胀:OpenSSL的SM4实现依赖大量…...
OFA-VE环境部署:Python 3.11+PyTorch+CUDA一站式配置手册
OFA-VE环境部署:Python 3.11PyTorchCUDA一站式配置手册 1. 引言:认识OFA-VE视觉推理系统 OFA-VE是一个基于阿里巴巴达摩院OFA大模型构建的多模态推理平台,专门用于分析图像内容与文本描述之间的逻辑关系。这个系统采用了现代化的赛博朋克视…...
从零开始玩转translategemma-27b-it:Ollama环境搭建与提示词详解
从零开始玩转translategemma-27b-it:Ollama环境搭建与提示词详解 1. 环境准备与快速部署 想要体验强大的图文翻译能力,首先需要搭建好运行环境。translategemma-27b-it是一个基于Ollama部署的翻译模型,支持文本和图片的翻译功能。 1.1 系统…...
