请原谅明显的错误-仍在学习。
我有一个带有高频数据的熊猫数据帧,这非常不一致。我必须计算每月平均值,但不能直接根据每日平均值进行计算。计算月平均数的条件是,每周至少应有1个数据点可计入月平均数。
由于每个月中一周的长度不均匀,所以我不能简单地使用每周平均值。我的目标是删除每周平均值少于两个的任何月份(从每周计算中),然后从每日值中计算每月平均值。
我正在尝试使用“ if”语句来计算此条件均值。 (通过“ if”语句,我想说,如果一周中的平均值非零,则该周应计入月均值,并且月均值应至少包括一个这样的每周均值)
在弄清楚语法方面的任何帮助将不胜感激。
这是我在代码中使用的方法,但是我知道它不会转换为我的意思:
for week in weeks:
value = df_weekly.loc[df_weekly['week']==week]['mean'].values
if any (value >0):
df_monthly = (df_daily_fix.groupby(["M","L","T" ,"year" ,pd.Grouper(freq='m')])["mean"]
.agg(["count", "mean"])
.reset_index().set_index(['Date']))
else:
df_monthly = np.nan
类似地,对于年度平均值,我将不得不至少选择四分之一。或每年平均值应具有每个季度的值。
谢谢您的期待。