Я написал беспорядочную функцию, которая вычисляет количество лет в фрейме данных на основе его длины (при условии, что dataframe имеет значения для каждого дня года).Расчет количества лет в кадре данных pandas
Он отлично работает, но это очень много кода, который можно было бы сделать гораздо умнее (но я не знаю, как ...)
Вот функция, она идет только до 10 лет, я хочу он работает для набора данных любого размера. Я мог бы расширить его дальше, копируя и вставляя и добавляя итоговые данные дальше, но должен быть более умный способ написать этот код.
def numyears(x):
if len(x.index) <= 366:
return 1
elif len(x.index) <= 732:
return 2
elif len(x.index) <= 1098:
return 3
elif len(x.index) <= 1464:
return 4
elif len(x.index) <= 1830:
return 5
elif len(x.index) <= 2196:
return 6
elif len(x.index) <= 2562:
return 7
elif len(x.index) <= 2928:
return 8
elif len(x.index) <= 3294:
return 9
elif len(x.index) <= 3660:
return 10
else:
return 'ERROR'
У вас есть временные метки или любые значения даты-времени, связанные с индексом или значений строк? – EdChum
Да значения строк имеют связанный с ними объект datetime – Pad
Итак, это столбец или это индекс? – EdChum