У меня есть несколько таблиц с конкретными данными временных рядов. Я хочу суммировать эти конкретные времена в сводную таблицу с интервалами времени.
например: у нас есть итоговые диапазоны дат
[Dec 21, Dec 22, Dec 23]
(от полуночи до полуночи).
и данные будут примерно такими:
Dec 21 10:00 = 15
Dec 21 11:00 = 10
Dec 22 13:00 = 5
Dec 22 16:00 = 10
Dec 23 2:00 = 6
Dec 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