this_series_df.with_columns([('hour', this_series_df['hour'].apply(update_hour))])
不行
会把一个处理后的series作为迭代对象,放到一个位置。所以hour的每个元素都是迭代对象。
可以
series_df = series_df.with_columns(
(pl.col("timestamp").dt.hour()).apply(update_hour).alias("hour"),
).select("series_id", *FEATURE_NAMES)
使用新的with_columns方法的调用格式。