欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實現(xiàn)讀取大量Excel文件并跨文件批量計算平均值

 更新時間:2023年02月02日 08:20:44   作者:瘋狂學習GIS  
這篇文章主要為大家詳細介紹了如何利用Python語言,實現(xiàn)對多個不同Excel文件進行數(shù)據(jù)讀取與平均值計算的方法,感興趣的可以了解一下

本文介紹基于Python語言,實現(xiàn)對多個不同Excel文件進行數(shù)據(jù)讀取與平均值計算的方法。

首先,讓我們來看一下具體需求:目前有一個文件夾,其中存放了大量Excel文件;文件名稱是每一位同學的名字,即文件名稱沒有任何規(guī)律。

而每一個文件都是一位同學全班除了自己之外的其他同學的各項打分,我們以其中一個Excel文件為例來看:

可以看到,全班同學人數(shù)(即表格行數(shù))很多、需要打分的項目(即表格列數(shù))有11個(不算總分);同時,由于不能給自己打分,導致每一份表格中會有一行沒有數(shù)據(jù)。

而我們需要做的,就是求出每一位同學的、11個打分項目分別的平均分,并存放在一個新的、表頭(行頭與列頭)與大家打分文件一致的總文件中,如下圖。其中,每一個格子都代表了這位同學、這一項打分項目在經過班級除其之外的每一位同學打分后計算出的平均值。

可以看到,一個人就需要算11次平均,更何況一個班會有數(shù)十位同學。如果單獨用Excel計算,是非常麻煩的。

而借助Python,就會簡單很多。具體代碼如下。在這里,就不再像平日里機器學習、深度學習代碼博客那樣,對代碼加以逐段、分部分的具體解釋了,直接列出全部代碼,大家參考注釋即可理解。

# -*- coding: utf-8 -*-
"""
Created on Thu Apr  8 16:24:41 2021

@author: fkxxgis
"""

import os
import numpy as np
from openpyxl import load_workbook

file_path='F:/班長/2020-2021綜合測評與評獎評優(yōu)/01_綜合測評/地信XXXX班互評打分表/' #這里是每一位同學打分Excel文件存放的路徑
output_path='F:/班長/2020-2021綜合測評與評獎評優(yōu)/01_綜合測評/地信XXXX班綜合素質測評互評打分表.xlsx' #這里是最終結果存放路徑,請不要和上述路徑一致
first_row=5 #第一個分數(shù)所在的行數(shù)
first_column=3 #第一個分數(shù)所在的列數(shù)
all_row=32 #班級同學總數(shù)
all_column=11 #需要計算的分數(shù)項目個數(shù)

all_excel=os.listdir(file_path) #獲取打分文件路徑下全部Excel文件
file_row=first_row+all_row-1
file_column=first_column+all_column-1
all_mean_score=np.zeros((file_row,file_column),dtype=float) #新建一個二維數(shù)組,存放每一位同學、每一項項目的分數(shù)平均值
for now_row in range(first_row,file_row+1):
    for now_column in range (first_column,file_column+1):
        all_score=[]
        for excel_num in range(0,len(all_excel)):
            now_excel=load_workbook(file_path+all_excel[excel_num]) #打開第一個打分Excel文件
            all_sheet=now_excel.get_sheet_names() #獲取打分文件的全部Sheet名稱
            now_sheet=now_excel.get_sheet_by_name(all_sheet[0]) #本文中分數(shù)全部存儲于第一個Sheet,因此下標為0
            single_score=now_sheet.cell(now_row,now_column).value #獲取對應單元格數(shù)據(jù)
            if single_score==None: #如果這個單元格為空(也就是自己不給自己打分的那一行)
                pass
            else:
                all_score.append(single_score)
        all_mean_score[now_row-1,now_column-1]=np.mean(all_score) #計算全部同學為這一位同學、這一個打分項目所打分數(shù)的平均值

output_excel=load_workbook(output_path) #讀取結果存放Excel
output_all_sheet=output_excel.get_sheet_names() #這里代碼含義同上
output_sheet=output_excel.get_sheet_by_name(output_all_sheet[0])
output_sheet=output_excel.active
for output_now_row in range(first_row,file_row+1):
    for output_now_column in range (first_column,file_column+1):
        exec("output_sheet.cell(output_now_row,output_now_column).value=all_mean_score[output_now_row-1,output_now_column-1]") #將二維數(shù)組中每一位同學、每一項打分項目的最終平均分數(shù)寫入結果文件的對應位置
output_excel.save(output_path)

至此,大功告成。

到此這篇關于Python實現(xiàn)讀取大量Excel文件并跨文件批量計算平均值的文章就介紹到這了,更多相關Python讀取Excel內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python文件操作模擬用戶登陸代碼實例

    Python文件操作模擬用戶登陸代碼實例

    這篇文章主要介紹了Python文件操作模擬用戶登陸代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • python 帶時區(qū)的日期格式化操作

    python 帶時區(qū)的日期格式化操作

    這篇文章主要介紹了python 帶時區(qū)的日期格式化操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • 在Python的Django框架中創(chuàng)建語言文件

    在Python的Django框架中創(chuàng)建語言文件

    這篇文章主要介紹了在Python的Django框架中創(chuàng)建語言文件的方法,以語言代碼來表示語言區(qū)域種類,需要的朋友可以參考下
    2015-07-07
  • Python爬蟲爬取王者榮耀英雄信息并保存到圖數(shù)據(jù)庫的操作方法

    Python爬蟲爬取王者榮耀英雄信息并保存到圖數(shù)據(jù)庫的操作方法

    本文介紹了如何使用Python爬蟲技術從王者榮耀官方獲取英雄信息,并將數(shù)據(jù)保存到圖數(shù)據(jù)庫中,文章詳細說明了爬取英雄名稱、類型及皮膚名稱的過程,并展示了創(chuàng)建英雄類型節(jié)點和英雄信息節(jié)點的方法
    2024-09-09
  • Python交換變量

    Python交換變量

    Python美味第一頓,來個方便快捷的變量交換!為什么是Python?!因為Python中交換變量不需要臨時變量!
    2008-09-09
  • 用Python實現(xiàn)服務器中只重載被修改的進程的方法

    用Python實現(xiàn)服務器中只重載被修改的進程的方法

    這篇文章主要介紹了用Python實現(xiàn)服務器中只重載被修改的進程的方法,包括用watchdog來檢測文件的變化等,實現(xiàn)起來充分體現(xiàn)了Python作為動態(tài)語言的靈活性,強烈推薦!需要的朋友可以參考下
    2015-04-04
  • Python常用工具之音頻調整音量

    Python常用工具之音頻調整音量

    這篇文章主要介紹一個可以將音頻提升音量的python常用工具,代碼具有一定的學習價值,感興趣的小伙伴可以了解一下
    2021-11-11
  • python繪制簡單折線圖代碼示例

    python繪制簡單折線圖代碼示例

    這篇文章主要介紹了python繪制簡單折線圖代碼示例,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • python3 寫一個WAV音頻文件播放器的代碼

    python3 寫一個WAV音頻文件播放器的代碼

    本文通過實例代碼給大家介紹了python3 寫一個WAV音頻文件播放器,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • python百行代碼實現(xiàn)漢服圈圖片爬取

    python百行代碼實現(xiàn)漢服圈圖片爬取

    這篇文章主要為大家介紹了使用python百行代碼來實現(xiàn)漢服圈的圖片爬取,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2021-11-11

最新評論