Pandas实现Excel文件读取,增删,打开,保存操作
目录
- 前言
- 一、Pandas 的主要函数包括
- 二、使用步骤
- 1.简单示例
- 2.保存Excel操作
- 3.删除和添加数据
- 4.添加新的表单
前言
Pandas 是一种基于 NumPy 的开源数据分析工具,用于处理和分析大量数据。Pandas 模块提供了一组高效的工具,可以轻松地读取、处理和分析各种类型的数据,包括 CSV、Excel、SQL 数据库、JSON 等格式的数据。
一、Pandas 的主要函数包括
pd.read_csv() / pd.read_excel() / pd.read_sql() 等:读取不同格式的数据文件或 SQL 数据库的数据。
DataFrame():创建数据框。
df.head() / df.tail():查看数据框的前几行或后几行。
df.info():查看数据框的基本信息。
df.describe():查看数据框的统计信息。
df.drop():删除数据框的行或列。
df.rename():重命名数据框的行或列。
df.sort_values():按照指定列排序数据框。
df.groupby():按照指定列分组数据框。
df.apply():对指定列应用函数。
pd.concat():合并数据框。
pd.merge():合并数据框的数据。
df.to_csv() / df.to_excel() / df.to_sql() 等:将数据框保存到不同格式的数据文件或 SQL 数据库中。
以上是 Pandas 的一些常用函数,这些函数使得数据的读取、处理和分析变得更加方便和高效。
二、使用步骤
1.简单示例
下面是 Pandas 对 Excel 文件进行读取、增删、打开、保存等操作的代码实现:
import pandas as pd # 读取 Excel 文件 df = pd.read_excel('example.xlsx', sheet_name='Sheet1') # 查看数据 print(df) # 增加一列数据 df['New Column'] = [1, 2, 3, 4, 5] # 删除一列数据 df = df.drop('New Column', axis=1) # 打开 Excel 文件 with pd.ExcelWriter('example.xlsx') as writer: df.to_excel(writer, sheet_name='Sheet1', index=False)
上述代码中,我们首先使用 pd.read_excel() 函数读取名为 example.xlsx 的 Excel 文件的 Sheet1 工作表,并将其存储在 df 变量中。接着,我们使用 print() 函数查看数据。
接下来,我们使用 df[‘New Column’] = [1, 2, 3, 4, 5] 增加一列新数据,表示新列的数据分别为 1、2、3、4 和 5。然后,我们使用 df = df.drop(‘New Column’, axis=1) 删除刚刚增加的一列数据。
最后,我们使用 pd.ExcelWriter() 函数打开 Excel 文件,然后使用 df.to_excel() 函数将数据写入名为 example.xlsx 的工作表 Sheet1 中,并将索引列排除在外。
2.保存Excel操作
Pandas 可以通过 to_excel() 函数将数据框保存到 Excel 文件中。下面是一个示例代码,演示如何将数据框保存到 Excel 文件中:
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)
在上述代码中,我们首先创建了一个包含姓名、年龄和性别信息的数据字典 data,然后使用 pd.DataFrame() 函数将其转换为数据框 df。最后,我们使用 df.to_excel() 函数将数据框保存到名为 example.xlsx 的 Excel 文件中,并将索引列排除在外。
在 to_excel() 函数中,我们可以设置一些参数来控制保存的格式和内容,例如:
- sheet_name:指定要保存的工作表名称。
- header:设置是否包含表头行,可以设置为 True 或 False。
- index:设置是否包含索引列,可以设置为 True 或 False。
- startrow 和 startcol:设置数据框的起始行和列。
- float_format:设置浮点数的输出格式。
- encoding:设置保存文件时使用的编码格式。
需要注意的是,在使用 to_excel() 函数保存数据框到 Excel 文件时,需要安装相应的依赖库 openpyxl 或 xlsxwriter。如果没有安装这些依赖库,可以使用以下命令安装:
pip install openpyxl pip install xlsxwriter
安装完依赖库之后,就可以正常地将数据框保存到 Excel 文件中了。
3.删除和添加数据
在 Pandas 中,可以使用 drop() 函数删除数据框中的一行或一列数据,使用 append() 函数添加一行或一列新的数据。下面是示例代码,演示如何删除一行或一列数据以及添加一行或一列新的数据:
import pandas as pd # 创建数据框 data = {'Name': ['Tom', 'Jerry', 'Mickey', 'Donald'], 'Age': [20, 25, 22, 28], 'Gender': ['M', 'M', 'M', 'M']} df = pd.DataFrame(data) # 删除一行数据 df = df.drop(0) # 删除第一行数据 print(df) # 删除一列数据 df = df.drop('Gender', axis=1) # 删除“Gender”列 print(df) # 添加一行新数据 new_data = {'Name': 'Daisy', 'Age': 24, 'Gender': 'F'} df = df.append(new_data, ignore_index=True) # 添加一行新数据 print(df) # 添加一列新数据 new_column = ['A', 'B', 'C', 'D'] df['NewColumn'] = new_column # 添加一列新数据 print(df)
在上述代码中,我们首先创建了一个包含姓名、年龄和性别信息的数据字典 data,然后使用 pd.DataFrame() 函数将其转换为数据框 df。接着,我们使用 drop() 函数删除了第一行数据和“Gender”列,并使用 append() 函数添加了一行新数据和一列新数据。最后,我们打印出修改后的数据框。
在 drop() 函数中,我们需要指定要删除的行或列的标签,并设置参数 axis=0 表示删除行,设置 axis=1 表示删除列。
在 append() 函数中,我们需要指定要添加的新数据,可以是字典、列表或数据框。参数 ignore_index=True 表示忽略原始数据框的索引,并为新添加的行分配新的索引值。
添加新列时,我们可以直接为数据框 df 新建一个列,并将新数据赋值给这个列即可。需要注意的是,新数据的长度必须与数据框的行数相同。
4.添加新的表单
在 Pandas 中,可以使用 ExcelWriter() 对象来向 Excel 文件中添加新的表单。下面是示例代码,演示如何向 Excel 文件中添加新的表单:
import pandas as pd # 读取 Excel 文件 excel_file = pd.ExcelFile('example.xlsx') # 创建 ExcelWriter 对象 writer = pd.ExcelWriter('example.xlsx', engine='openpyxl') # 读取原始数据表单 df = pd.read_excel(excel_file, sheet_name='Sheet1') # 添加新表单 new_data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]} df_new = pd.DataFrame(new_data) df_new.to_excel(writer, sheet_name='Sheet2', index=False) # 保存 Excel 文件 writer.save()
在上述代码中,我们首先使用 ExcelFile() 函数读取了一个名为 example.xlsx 的 Excel 文件。接着,我们使用 ExcelWriter() 函数创建了一个名为 writer 的 ExcelWriter 对象,用于向 Excel 文件中添加新的表单。然后,我们使用 read_excel() 函数读取了原始数据表单,并将其存储在数据框 df 中。接着,我们创建了一个包含姓名和年龄信息的数据字典 new_data,并使用 pd.DataFrame() 函数将其转换为数据框 df_new。然后,我们使用 to_excel() 函数将数据框 df_new 写入到名为 Sheet2 的新表单中,并设置参数 index=False 表示不将索引写入 Excel 文件。最后,我们使用 save() 函数保存 Excel 文件。
需要注意的是,在使用 ExcelWriter() 对象向 Excel 文件中添加新的表单时,需要指定参数 engine=‘openpyxl’,以使用 openpyxl 引擎来处理 Excel 文件。同时,在使用 to_excel() 函数写入数据时,需要传递 ExcelWriter 对象和新表单的名称。
到此这篇关于Pandas实现Excel文件读取,增删,打开,保存操作的文章就介绍到这了,更多相关Pandas Excel操作内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!