Python办公之一:获取多组数据的每日平均值的近似值所对应的日期
一、需求
1、数据描述:1000个通道,每个通道每日不定时采集数据n份。
2、结果描述:每个通道每日取一组数据(日期,壁厚),要求壁厚是每日数据与平均值最接近的一个数。
3、原始数据图:
二、设计
1、读取原始数据
一共需要提取1000组、365天的数据,观察数据在excel表中的形式,结合后期处理方式,确定以字典包含列表的形式提取数据,方便后面对数据的操作
#获取excel需要操作的工作页
#参数:route:路径;sheet_name:工作页
def tab(route, sheet_name):
data = xlrd.open_workbook(route)
data.sheet_names()
table = data.sheet_by_name(sheet_name)
return table
#导入井口摄像头数据(数据形式以两列,同间隔格式)
'''
route:路径
sheet_name:工作页
number_lie:第几列开始取值
numbel_hang:第几行开始取值
n:探头个数
interval:相同数据的间隔(不同探头数据的日期行间隔)
返回值:返回一个列表,形式:list = [{'lie_1':['44078.7','44079.64', ...]},{'dlie_1':['21.17', '21.18', ...]}]
'''
def imp(route, sheet_name, number_lie, numbel_hang, interval, n):
table = tools.MyLibrary.tab(route, sheet_name)
lis = []
dic01 = {
}
dic02 = {
}
num = 0
for j in range(1, n+1):#1,2,3,4...12
dic01['lie_' + str(j)] = [str(table.cell_value(i, numbel_hang-1+interval*num)) for i in range(number_lie-1, table.nrows)]
dic02['dlie_' + str(j)] = [str(table.cell_value(i, numbel_hang+interval*num))