Python与Excel交互:pandas库安装及基本用法

news/2024/11/8 9:48:28 标签: python, excel, pandas

在之前的文章中,我们探讨了Python处理Excel文件的基本概念,如工作簿、工作表以及单元格等。现在我们将转向具体的工具介绍——pandas库,它是Python中最常用的数据分析库之一,能够非常便捷地读取、处理和写入Excel文件。

安装pandas

首先,确保你的Python环境中已经安装了pandas库。如果没有安装,可以通过以下命令进行安装:

pip install pandas

如果需要同时支持Excel文件的读写功能,则还需要安装openpyxlxlrdxlsxwriter来读写.xlsx文件:

pip install openpyxl
# 或者
pip install xlrd xlsxwriter

pandas基本用法

读取Excel文件

import pandas as pd

# 读取Excel文件中的第一个Sheet
df = pd.read_excel('example.xlsx')

# 读取指定Sheet(通过名称)
df = pd.read_excel('example.xlsx', sheet_name='SheetName')

# 读取指定Sheet(通过索引)
df = pd.read_excel('example.xlsx', sheet_name=0)

# 获取所有Sheet的名称列表
xls = pd.ExcelFile('example.xlsx')
sheet_names = xls.sheet_names

查看数据

# 查看前几行数据
print(df.head())

# 查看后几行数据
print(df.tail())

基本数据处理

# 选择某一列数据
column_data = df['ColumnName']

# 选择某几列数据
selected_columns = df[['Column1', 'Column2']]

# 按条件筛选数据
filtered_df = df[df['ColumnName'] > 5]

# 添加新列
df['NewColumn'] = df['ColumnA'] + df['ColumnB']

写入Excel文件

# 将DataFrame写入Excel文件
df.to_excel('output.xlsx', index=False)

实践案例

假设有一个Excel文件包含了员工的信息,我们可以使用pandas来进行简单的数据分析:

# 读取Excel文件
employees_df = pd.read_excel('employees.xlsx')

# 查看前5条记录
print(employees_df.head())

# 筛选出部门为'Engineering'的员工
engineering_employees = employees_df[employees_df['Department'] == 'Engineering']

# 计算Engineering部门员工的平均年龄
average_age = engineering_employees['Age'].mean()
print(f"Average age of Engineering department: {average_age:.2f}")

总结

本文介绍了如何使用pandas库来安装并执行基本的Excel文件读写操作。我们学习了如何读取Excel文件中的数据,筛选和处理数据,以及如何将处理后的数据写回Excel文件。这些技能为使用Python进行数据分析提供了坚实的基础。接下来,我们将继续深入探索更多的pandas功能以及其他与Excel交互的方法。


http://www.niftyadmin.cn/n/5743701.html

相关文章

Jenkins声明式Pipeline流水线语法示例

系列文章目录 docker搭建Jenkins2.346.3版本及常用工具集成配置(ldap、maven、ansible、npm等) docker安装低版本的jenkins-2.346.3,在线安装对应版本插件失败的解决方法 文章目录 系列文章目录jenkins流水线基础1、pipeline1.1、什么是pipeline?1.2、为什么使用pi…

centos7,yum安装mongodb

yum安装mongodb 1.配置MongoDB的yum源2.安装Mongodb3.启动Mongodb4.配置远程访问5.设置mongo密码 1.配置MongoDB的yum源 1.创建yum源文件,输入命令: vim /etc/yum.repos.d/mongodb-org-5.0.repo然后在文件中输入以下内容并保存: [mongodb-…

HashMap底层原理(jdk1.7和jdk1.8对比)?

HashMap 底层结构与实现 HashMap 底层是基于哈希表(Hash Table)实现的,它存储的元素是键值对(key-value)。底层的数据结构是一个数组,数组的每个元素是一个 桶(bucket),…

5G周边知识笔记

这里写目录标题 3GPP 5G标准路径图5G协议规范5G新空口关键指标4G LTE和5G NR新空口技术对比5G新频段FR1FR2 信道带宽上下行解耦新频点规划,信道栅格FR1各频段实际信道栅格和NR-ARFCN范围定义 同步栅格大规模天线阵列新型调制编码技术大规模载波聚合设备到设备直接通…

【GPT使用技巧】用AI出一门课

提问 我想做一个ChatGPT的课程,针对小白,解决从0到1的问题。按照小白的通点,列出大家最关心的问题,做一个课程大纲给我。避免生涩语言,用小白理解和关心的方式展示。 GPT的回答结果 课程大纲:ChatGPT入门…

SPIRE: Semantic Prompt-Driven Image Restoration 论文阅读笔记

这是一篇港科大学生在google research 实习期间发在ECCV2024的语义引导生成式修复的文章,港科大陈启峰也挂了名字。从首页图看效果确实很惊艳,尤其是第三行能用文本调控修复结果牌上的字。不过看起来更倾向于生成,对原图内容并不是很复原&…

C++ | Leetcode C++题解之第546题移除盒子

题目&#xff1a; 题解&#xff1a; class Solution { public:int dp[100][100][100];int removeBoxes(vector<int>& boxes) {memset(dp, 0, sizeof dp);return calculatePoints(boxes, 0, boxes.size() - 1, 0);}int calculatePoints(vector<int>& boxes…

Centos使用yum获取离线安装包

要获取CentOS的yum离线安装包&#xff0c;你可以在有网络连接的环境中下载RPM包及其依赖&#xff0c;然后将它们复制到没有网络的CentOS系统上进行安装。以下是步骤和示例命令&#xff1a; 1、在有网络的环境中&#xff0c;安装yum-utils以便使用yumdownloader工具&#xff1a…