【发布时间】:2019-11-16 06:29:23
【问题描述】:
我有几个包含特定时间序列数据的电子表格。我想将这些特定时间汇总到一个包含时间范围的汇总表中。
例如:我们有我们的摘要日期范围
-
[Dec 21, Dec 22, Dec 23](午夜到午夜)。
数据会是这样的:
Dec 21 10:00 = 15Dec 21 11:00 = 10Dec 22 13:00 = 5Dec 22 16:00 = 10Dec 23 2:00 = 6Dec 23 12:00 = 6
因此,我希望摘要最终为:Dec 21 = 25、Dec 22 = 15、Dec 23 = 12。
我正在使用 python、datetime 和 openpyxl 模块来访问和创建时间值。
我很难理解时间序列列表的创建。以及实际添加。
从各个工作表中获取实际的日期时间和值很容易。
for sheet in projectList:
ws = wb[sheet]
LOCSum = 0
LOCList = {}
for cols in range(8,30):
LOCDate = ws.cell(row=4, column=cols).value #A datetime
LOCSum = ws.cell(row=70, column=cols).value #A number
LOCList = LocList + appendToListOfValues(LOCDate, LOCSum)
fitListOfValuesIntoSummary(LOCList)
获得LOCDate 和LOCSum 后,如何将它们组合到一个列表中,然后再添加到摘要中? appendToListOfValues() 函数实际上并不存在。应该是字典吗?一个元组?
那么,一旦我有了一个时间序列列表,我如何使它适合摘要列表? fitListOfValuesIntoSummary() 函数也不存在。
最后一个踢球者,如果数据超出指定范围怎么办?我是否只是将它添加到摘要列表的“之前”和“之后”范围?
请指点我一些文学的方向。
(因为我一直在输入这个问题。)
是否会自动将找到的值添加到 Excel 文档中的摘要单元格中?
if LOCDate >= summaryDate+1:
summaryDate = summaryDate+1
if summaryDate <= LOCDate <= summaryDate+1:
ws[summary]['correctCol'+'correctRow'].value = ws[summary]['correctCol'+'correctRow'].value + LOCSum
【问题讨论】:
标签: python excel indexing time-series addition