下面就是我们的实例讲解:
标题一:Python实战之实现Excel读取、统计、写入
步骤一:安装相关库和模块
为了实现Excel读取、统计、写入,我们需要安装pandas和openpyxl模块,这两个模块可以通过以下命令安装:
pip install pandas
pip install openpyxl
步骤二:读取Excel文件
在此示例中,我们假设有一个课程分数Excel表格,表格中包含了学生姓名、学号、科目、分数等信息,我们需要读取该表格并进行统计。首先,我们需要使用pandas模块读取数据:
import pandas as pd
df = pd.read_excel('scores.xlsx')
步骤三:数据统计和处理
通过pandas读取Excel表格后,我们可以使用pandas提供的函数进行数据分析和处理。比如,我们可以使用groupby函数对不同科目的成绩进行分类,然后求出每科的平均分数:
df_subject = df.groupby(['subject'])
df_avg = df_subject.mean()
步骤四:将统计结果写入Excel
最后,我们需要将统计结果写入Excel表格中。我们可以使用openpyxl模块创建一个新的Excel文件,然后将统计结果写入其中:
from openpyxl import Workbook
workbook = Workbook()
sheet = workbook.active
sheet['A1'] = 'Subject Name'
sheet['B1'] = 'Average Score'
for idx, row in enumerate(df_avg.iterrows()):
sheet.cell(row = idx+2, column = 1, value = row[0])
sheet.cell(row = idx+2, column = 2, value = row[1])
workbook.save(filename = 'result.xlsx')
在这个示例中,我们首先创建了一个新的Excel文件,然后在第一个sheet的A1和B1位置写入了表头。接着,我们使用DataFrame对象的iterrows函数遍历了每个科目的平均分数,并依次将这些数据写入Excel的每行。
示例二:读取多个Excel文件并进行合并统计
假设我们有两个Excel文件,一个是数学成绩表格math.xlsx,另一个是英语成绩表格english.xlsx。我们需要将两个表格的内容进行合并,并进行平均分数统计。下面是合并并统计的代码:
import pandas as pd
df_math = pd.read_excel('math.xlsx')
df_english = pd.read_excel('english.xlsx')
df_concat = pd.concat([df_math, df_english], axis = 0)
df_subject = df_concat.groupby(['subject'])
df_avg = df_subject.mean()
在这个示例中,我们首先使用pandas模块分别读取了math.xlsx和english.xlsx两个Excel文件。接着,使用pandas的concat函数将两个DataFrame对象合并为一个,并使用groupby函数统计每个科目的平均分数。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python实战之实现excel读取、统计、写入的示例讲解 - Python技术站