如何从每日价值中获取每月金额-功能?

时间:2019-04-24 12:35:11

标签: python dataframe

我每天都有1983年至2019年这段时间的气象数据集。我正在做一些数据处理,我想创建一个函数,该函数将一个变量的值在特定时期内取一个总和。

这将在代码中多次使用,所以我不想使用.resample('MS')。sum()。此外,我想在编程方面做得更好,所以我试图通过“书面”功能解决这个问题。

所以数据集看起来像这样。我刚刚创建了一个新变量“ MONTH”。但这可能是四分之一或半年。

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

0 个答案:

没有答案