bsrn.utils.averaging.pretty_average#
- bsrn.utils.averaging.pretty_average(df, freq, alignment='ceiling', aggfunc='mean', resolution=None, match_ceiling_labels=True)[source]#
Average
dfover explicit labeled windows (not pandasresamplesemantics). 按显式标签窗聚合(非resample)。语义与示例见docs/tutorials/3.time_averaging.ipynb。- Parameters:
df (pandas.DataFrame) – Must use a
DatetimeIndex. 须为DatetimeIndex。freq (str) – Fixed bin frequency (e.g.
'1h','30min'). / 固定分箱频率。alignment ({‘floor’, ‘ceiling’, ‘center’}, default
'ceiling') – floor[L, L+Δ)· ceiling(L-Δ, L]· center[L-Δ/2+res, L+Δ/2]. 定义见教程docs/tutorials/3.time_averaging.ipynb。aggfunc (str or callable, default
'mean') – Passed to_aggregate(). / 传入_aggregate()。resolution (pandas.Timedelta or None, default None) – Native timestep for center windows; if None, inferred as 1 or 3 min via
_archive_timestep_1_or_3(). / center 窗的原生步长;None 时由_archive_timestep_1_or_3()推断为 1 或 3 分钟。match_ceiling_labels (bool, default True) – When
alignment='center', trim monthly edge labels like ceiling (default) or floor.alignment='center'时,月界裁剪与 ceiling**(默认)或 **floor 一致。
- Returns:
One row per output label; insufficient coverage yields NaN rows (labels retained). 每个输出标签一行;覆盖不足时保留标签但行为 NaN。
- Return type:
- Raises:
TypeError – If
df.indexis not aDatetimeIndex. / 索引非DatetimeIndex。