如果你有一个很长的数据集,需要计算其中某一列的平均值,可以试试这种方法:
目标:遍历文件夹中的所有xlsx文件,计算每个文件中某一列比如XXX列的平均值,并精确到小数点后两位,并将文件夹内所有文件的xxx列平均值和文件名导出到一个新的xlsx文件中并保存。
实现的python代码:
import os
import pandas as pd
# 定义存放xlsx文件的文件夹路径
folder_path = "D:/XXXX/XXX/XXX/"
# 初始化一个空的DataFrame来存储平均值
average_df = pd.DataFrame(columns=["文件名", "平均值"])
# 遍历文件夹中的每个文件
for filename in os.listdir(folder_path):
if filename.endswith(".xlsx"):
file_path = os.path.join(folder_path, filename)
try:
# 读取xlsx文件
df = pd.read_excel(file_path)
# 计算XXX列的平均值并精确到小数点后两位
average_value1 = round(df["XXX"].mean(), 2)
# 将文件名和平均值添加到DataFrame中
average_df = average_df.append({"文件名": filename, "平均值": average_value1}, ignore_index=True)
except Exception as e:
print(f"处理 {filename} 时出错:{e}")
# 将DataFrame导出到一个新的xlsx文件中
output_file = "XXX列平均值.xlsx"
average_df.to_excel(output_file, index=False)
print(f"平均值已计算并保存到 {output_file}")