需求
有N组人员进行了presention,有M个评委分别对这N组的presention进行了K个维度的打分,评委使用Excel进行打分,因此产生了M个Excel文件。现在要求每个小组每个维度的平均分以及总分的平均分。
代码
import os
import pandas as pd
path = os.getcwd() + '\data'
'''
获取文件夹下文件个数,知道有多少个人参与了评分
'''
for dirpath, dirnames, filenames in os.walk(path):
continue
file_counts = len(filenames)
print(file_counts)
'''
计算总分
'''
flag = 0
for flie in os.listdir(path):
f_path = os.path.join(path , flie)
df_tmp = pd.read_excel(f_path,header=1,index_col=(0)) #第一行做表头,第一列做索引,不参与计算
if flag == 0 :
df=df_tmp
flag = 1
else :
df = df_tmp + df
df_sum = df
print(df_sum)
'''
计算平均分
'''
df_avg = df_sum/file_counts
print(df_avg)
'''
把结果写进Excel
'''
df_avg.to_excel('A_A_统计结果平均分.xlsx')
使用细节
M个Excel文件放在名为data的文件夹中,该文件夹与.py文件在同一级目录
个人体验与反思
很久没有写代码了,连基本语法都忘得差不多了(惭愧.jpg)。一个多小时从复习到完成弄出来的工具,能用,但感觉可以优化的地方,恳请大家多提宝贵意见。