panads操作excel

panads简介

pandas是基于Numpy创建的Python包,内置了大量标准函数,能够高效地解决数据分析数据处理和分析任务,pandas支持多种文件的操作,比如Excel,csv,json,txt 文件等,读取文件之后,就可以对数据进行各种清洗、分析操作了。

padas和excel中数据结构的对应关系

pandas excel
DataFrame 工作表(Worksheet)
Series 列(Column)
index 行号(row index)
Row 行(Row)
NaN 空单元格(empty cell)

DataFrame

Pandas 中的 DataFrame 类似于 Excel 工作表,虽然 Excel 工作簿可以包含多个工作表,但 Pandas DataFrame 独立存在的。

Series

序列是表示 DataFrame 的一列的数据结构,类似于引用电子表格的列。

Index

每个 DataFrame 和 Series 都有一个索引,它们是数据行上的标签。在 Pandas 中,如果未指定索引,则默认使用 RangeIndex(第一行 = 0,第二行 = 1,依此类推),类似于电子表格中的每行开始的数字。 在 Pandas 中,索引可以设置为一个(或多个)唯一值,这就像在工作表中有一列用作行标识符一样,这些索引值可用于引用行。索引值是持久的,所以对 DataFrame 中的行重新排序,特定行的标签不会改变。

pandas读取excel

pandas读取文件之后,将内容存储为DataFrame,然后就可以调用内置的各种函数进行分析处理。

pandas对xlrd等模块进行了封装,可以很方便的处理excel文件,支持xls和xlsx等格式,需要提前安装模块pip install openpyxl

read_excel

py 复制代码
pandas.read_excel(filename, sep, header,encoding)

参数解释

  • **filename:**文件路径,可以设置为绝对路径或相对路径
  • **sep:**分隔符,常用的有逗号 , 分隔、\t 分隔,默认逗号分隔,read_table默认是'\t'(也就是tab)切割数据集的
  • **header:**指定表头,即列名,默认第一行,header = None, 没有表头,全部为数据内容
  • **encoding:**文件编码方式,不设置此选项, Pandas 默认使用 UTF-8 来解码。
  • index_col ,指定索引对应的列为数据框的行标签,默认 Pandas 会从 0、1、2、3 做自然排序分配给各条记录。
  • 通过names=['a','b','c']可以自己设置列标题

read_table()

可以读取Excel中的数据表,并指定分隔符(如制表符或逗号)。

py 复制代码
pd.read_table('data.xlsx', sheet_name='Sheet1', delimiter='\t', header=0)
  • 'data.xlsx'是Excel文件的路径。
  • sheet_name='Sheet1'表示要读取的工作表名为'Sheet1'。
  • delimiter='\t'指定数据表中的分隔符为制表符('\t')。
  • header=0表示将文件中的第0行作为列名。

例子

py 复制代码
import pandas as pd
result = pd.read_excel(r"E:\2021竞赛题目列表(本科).xlsx")
print(result)

创建Excel

py 复制代码
import pandas as pd

# 创建数据框
data = {'Name': ['Tom', 'Jerry', 'Mickey', 'Donald'],
        'Age': [20, 25, 22, 28],
        'Gender': ['M', 'M', 'M', 'M']}
df = pd.DataFrame(data)


# 保存数据框到 Excel 文件
df.to_excel('example.xlsx', index=False)

效果

常用操作合集

相关推荐
MOMO陌染1 天前
Python 饼图入门:3 行代码展示数据占比
后端·python
vvoennvv1 天前
【Python TensorFlow】 TCN-GRU时间序列卷积门控循环神经网络时序预测算法(附代码)
python·rnn·神经网络·机器学习·gru·tensorflow·tcn
自学互联网1 天前
使用Python构建钢铁行业生产监控系统:从理论到实践
开发语言·python
无心水1 天前
【Python实战进阶】7、Python条件与循环实战详解:从基础语法到高级技巧
android·java·python·python列表推导式·python条件语句·python循环语句·python实战案例
xwill*1 天前
RDT-1B: A DIFFUSION FOUNDATION MODEL FOR BIMANUAL MANIPULATION
人工智能·pytorch·python·深度学习
陈奕昆1 天前
n8n实战营Day2课时2:Loop+Merge节点进阶·Excel批量校验实操
人工智能·python·excel·n8n
程序猿追1 天前
PyTorch算子模板库技术解读:无缝衔接PyTorch模型与Ascend硬件的桥梁
人工智能·pytorch·python·深度学习·机器学习
秋邱1 天前
高等教育 AI 智能体的 “导学诊践” 闭环
开发语言·网络·数据库·人工智能·python·docker
组合缺一1 天前
Solon AI 开发学习6 - chat - 两种 http 流式输入输出
python·学习·http
沐浴露z1 天前
为什么使用SpringAI时通常用Builder来创建对象?详解 【Builder模式】和【直接 new】的区别
java·python·建造者模式