学校快开学啦 我用pandas筛查体温统计表

之前写过一个批量提取excel数据的代码。今天把它改造成一个筛查几百人的体温数据代码,从里面提取体温超过37.3 的人的信息。
直接上代码
注意: 所有xlsx格式的文件可以适用 你的表格里面必须有体温数据

import pandas as pd
import numpy as np
import tkinter as tk    #调用GUI图形模块
from tkinter import filedialog
from openpyxl import load_workbook,Workbook
import 获取excel文件名 
def read_excel1(path):
    data_xls = pd.ExcelFile(path)
    #print(data_xls.sheet_names)
    #print(name)
    return data_xls.sheet_names

#原文链接:https://blog.csdn.net/CSU_GUO_LIANG/article/details/99235692
def pddata(path,k):
    global xx,rows,dfdata,out
    read_excel1(path)
    rows=pd.read_excel(path, sheet_name=read_excel1(path)[k]) 
    labels = list(rows.columns.values)    
    #print(rows)
    aa=pd.DataFrame(rows) 

    dfdata=[]
    x=np.array(rows.loc[:])
    xx=pd.DataFrame(x)
    y=x.tolist()
    n=0
    flag=0                
    for i in np.array(rows.loc[:]):
        n+=1
        for j in i:
            try:
                #

                a=float(str(j))            
            
                if  37.3 <=a<40.0:
                    dfdata.append(i)
                    print('体温异常数据存在于行',n)
                    flag+=1                    
                
            except Exception as e:
                pass
    #xx.drop(labels=[m],axis=0,inplace=True)                   
    #bb=pd.DataFrame(dfdata)
    #print('*****************************************************')
    #print(pd.DataFrame([rows.columns.values]))
    #print(xx[:2])
    #print(pd.DataFrame(dfdata))
    title0=pd.DataFrame([rows.columns.values])
    #title1=xx[:2]
    content=pd.DataFrame(dfdata)
    out=pd.concat([title0,content])
    if flag==0:
        print('此表格不存在体温异常数据')        
    
    print(read_excel1(path)[k])  
    print(out)
    return out

if __name__ == '__main__':
    root = tk.Tk()
    root.withdraw()
    data_dir = filedialog.askdirectory(title='请选择图片文件夹')+'/'  
    file=获取excel文件名.方法_获取文件路径(data_dir)
    
    #path='河曲中学高二开学前学生防疫监管信息登记表-2(5.07).xlsx'# 需要提取的文件
    for i in file:        
        path=i
        read_excel1(path)        
        wb =Workbook()
        f=wb.save(str(i)[:-5]+'output.xlsx')# 需要输出的文件
        for k in range(len(read_excel1(path))):
        #for k in range(1):          
            writer=pd.ExcelWriter(str(i)[:-5]+'output.xlsx', engine='openpyxl')  
            book = load_workbook(str(i)[:-5]+'output.xlsx')
            writer.book = book
            data3 = pddata(path,k)
            data3.to_excel(writer,sheet_name=read_excel1(path)[k],index=False)    
            writer.save()
        print('数据源文件',i)
        print('*****************************************************')
        print('\n'*3)
        

上面的代码需要和下面的代码放一个文件夹 以下代码为了获取你选择的文件夹内 的 所有xlsx格式的文件目录地址以及文件名
以下代码文件被命名为 : 获取excel文件名 .py
因为上面的 ’ import 获取excel文件名 ’ 这一句要用到它

import os as tool
import tkinter as tk    #调用GUI图形模块
from tkinter import filedialog

def 方法_获取文件路径(data_dir):
    文件集 = tool.listdir(data_dir)
    filename=[]
    #return 文件集
    for 文件名 in 文件集:
            文件名分解 = 文件名.split('.')
            #print(文件名分解)
            if 文件名分解[-1] == 'xlsx': #or 文件名分解[-1] == 'xls':
                excel文件路径 = (data_dir + '\\'+ 文件名)                
                filename.append(excel文件路径)
                print(excel文件路径)
    #print(filename)
    return filename

  #用对话框选择图片存储文件夹
#方法_获取文件路径(data_dir)  #函数内部放入文件夹的路径  可以解析出所有的excel路径名  然后传入代码进行批量操作


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

搬码工琪老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值