我一直在搜索,但找不到我的问题的答案。我有太阳能电池测量数据。数据有时间戳值但没有频率。一小时内的值数量不是恒定的。一个小时内可以出现任意数量的值。所以我正在努力创造:一世。包含数据的每小时平均值的列。ii. 另一列保存每小时发生的测量计数。这很重要,因为我的时间戳没有固定频率。因此,重要的是要知道为一天中的特定小时计算的平均值是否有 1 次、2 次或 14 次测量。我的数据框图像:我的代码:yr=df.index.yearmon=df.index.monthday= df.index.dayhr = df.index.hourdf.groupby([yr, mon, day, hr])['KP_sensor'].mean()我如何在此数据帧的末尾添加两列(平均列和该小时内发生的测量计数)。
2 回答

达令说
TA贡献1821条经验 获得超6个赞
这是许多可能的解决方案之一。你已经完成了一部分。
df["hour"] = df.index.hour
df["date"] = df.index.date
dfMeans = df.groupby(["date", "hour"])[["Sol_Data", "Irr_Unc_perc", "ISF_stable", "KP_sensor", "Tamb"]].mean()
dfMeans.reset_index(inplace=True)
dfHours = pd.DataFrame(df.groupby(["date", "hour"])["hour"].count())
dfHours.columns = ["count"]
dfHours.reset_index(inplace=True)
dfFinal = pd.merge(dfHours, dfMeans, how="left", on=["date","hour"])
添加回答
举报
0/150
提交
取消