У меня есть матрица 6 xn с данными: год, месяц, день, час, минута, использование.Я должен сделать новую матрицу, содержащую агрегированные измерения для использования, в значении «час».Таким образом, все строки, записанные в течение одного часа, объединяются.Таким образом, каждый раз, когда число часовых шансов, которое необходимо знать коду, начинается новый период.Я только что попробовал, но я не знаю, как это решить.Спасибо.Это то, что я пытался + тест
def groupby_measurements(data):
count = -1
for i in range(9):
array = np.split(data, np.where(data[i,3] != data[i+1,3])[0][:1])
return array
print(groupby_measurements(np.array([[2006,2,11,1,1,55],
[2006,2,11,1,11,79],
[2006,2,11,1,32,2],
[2006,2,11,1,41,66],
[2006,2,11,1,51,76],
[2006,2,11,10,2,89],
[2006,2,11,10,3,33],
[2006,2,11,14,2,22],
[2006,2,11,14,5,34]])))
В этом случае я пытался, я ожидаю, что результат будет:
np.array([[2006,2,11,1,1,55],
[2006,2,11,1,11,79],
[2006,2,11,1,32,2],
[2006,2,11,1,41,66],
[2006,2,11,1,51,76]]),
np.array([[2006,2,11,10,2,89],
[2006,2,11,10,3,33]]),
np.array([[2006,2,11,14,2,22],
[2006,2,11,14,5,34]])
Окончательный результат должен быть:
np.array([2006,2,11,1,0,278]),
np.array([2006,2,11,10,0,122]),
np.array([2006,2,11,14,0,56])
(сумма использования в 3-х часовых периодах)