Как сделать ежемесячные суммы из дневных значений - функция? - PullRequest
0 голосов
/ 24 апреля 2019

У меня есть набор данных метеорологических данных каждый день за период 1983 - 2019 гг. Я занимаюсь обработкой данных, и я хотел бы создать функцию, которая будет принимать значения для одной переменной и за определенный период и получать сумму.

Это будет использоваться несколько раз в коде, поэтому я не хочу использовать .resample ('MS'). Sum ().Более того, я хотел бы быть сильнее в программировании, поэтому я пытаюсь решить его с помощью «письменной» функции.

Итак, набор данных выглядит следующим образом.Я только что создал новую переменную «МЕСЯЦ».Но это может быть четверть или полугодие.

filled_values['MONTH'] = filled_values['DAY'].dt.strftime('%b %Y')
filled_values.tail(n=2)

out:
      DAY        RAIN   TEMP  TMAX   TMIN   WIND  MONTH
13030 2019-03-04 0.1240 22.38 26.500 18.840 1.16  Mar 2019
13031 2019-03-05 0.1900 22.77 29.220 17.510 1.08  Mar 2019

А сейчас я пытаюсь создать функцию.

prec_sums_per_month = []
def sums_prec(dataset, date, variable_for_sum, new_variable, new_dataset): 
    for date in dataset.items:
        new_dataset[new_variable] = variable_for_sum.sum()
    return new_dataset

prec_sums_per_month = sums_prec(filled_values, 'MONTH', 'RAIN', 'RAIN_MONTH', prec_sums_per_month)
print(prec_sums_per_month)

Я ожидал новый DataFrame (или словарь?) С переменной 'MONTH' и суммой дождя длятот месяцНо вот мой результат:

TypeError: 'method' object is not iterable
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...