利用Python改正excel表格数据

  • Post category:Python

下面我将为你介绍如何利用Python改正Excel表格数据的完整实例教程。

准备工作

首先,我们需要安装pandas和openpyxl这两个Python库,这两个库可以帮助我们读取和操作excel文件。可以通过以下命令来安装这两个库:

pip install pandas openpyxl

读取Excel表格

首先,我们需要读取Excel表格。可以使用pandas库中的read_excel函数读取Excel文件,具体代码如下:

import pandas as pd

df = pd.read_excel('example.xlsx')

这里,我们将Excel文件读取到一个名为df的pandas.DataFrame对象中。可以使用以下代码查看该对象的前5行数据:

print(df.head())

修改Excel表格数据

我们可以通过pandas库提供的方法修改Excel表格数据。比如,我们可以将所有学生的分数都加10分:

df['score'] = df['score'] + 10

这里,我们通过对score列进行加法运算实现将所有分数加10分。

接下来,我们可以将修改后的数据保存回原Excel文件中。可以使用pandas库提供的方法来完成此操作:

df.to_excel('example.xlsx', index=False)

这里,我们调用to_excel()方法,将修改后的DataFrame对象中数据写入到名为‘example.xlsx’的Excel文件中。index参数被设为False,表示不需要写入行索引。

示例说明

下面,我们通过两个示例说明利用Python改正Excel表格数据的实例:

示例一

假设我们有一个名为‘example.xlsx’的Excel文件,里面记录了3个人的姓名、年龄和成绩,如下所示:

name age score
张三 21 85
李四 20 90
王五 19 95

现在,我们需要将所有人的成绩都加10分。我们可以通过以下代码来实现:

import pandas as pd

df = pd.read_excel('example.xlsx')
df['score'] = df['score'] + 10
df.to_excel('example.xlsx', index=False)

执行上述代码后,我们打开‘example.xlsx’文件,会发现其中的数据已经被更新,改正了所有人的成绩,如下所示:

name age score
张三 21 95
李四 20 100
王五 19 105

示例二

假设我们有一个名为‘example.xlsx’的Excel文件,里面记录了一组数值数据,如下所示:

value
1.2
2.3
3.5
4.6

我们需要将其中所有小数点后一位四舍五入,保留到小数点后两位。我们可以通过以下代码来实现:

import pandas as pd
import math

def round_2(num):
    return math.floor(num * 100 + 0.5) / 100

df = pd.read_excel('example.xlsx')
df['value'] = df['value'].apply(round_2)
df.to_excel('example.xlsx', index=False)

这里,我们定义了一个辅助函数round_2,用于将数字四舍五入并保留小数点后两位。然后,我们读取‘example.xlsx’文件,将其中的数据读入DataFrame对象中。接着,我们调用apply()方法,将辅助函数round_2应用到‘value’列中的所有数据上。最后,我们将修改后的数据保存回原Excel文件中。

执行上述代码后,我们打开‘example.xlsx’文件,会发现其中的数据已经被更新,小数点后一位已经被四舍五入并保留到小数点后两位,如下所示:

value
1.20
2.30
3.50
4.60

以上就是利用Python改正Excel表格数据的完整实例教程。