| 12345678910111213141516171819202122232425262728 |
- import pandas as pd
- STATE_COLUMNS = [
- "q_UF", "temp", "TMP", "R",
- "nuK", "slope", "power", "ceb_removal"
- ]
- def build_chem_cycle_state(df: pd.DataFrame) -> pd.DataFrame:
- """
- 从【物理周期层级】数据中构造
- 【化学周期层级】的 RL 状态。
- """
- grouped = df.groupby(["unit_id", "chem_cycle_id"])
- state_df = pd.DataFrame({
- "q_UF": grouped["flow_mean"].mean(),
- "temp": grouped["temp_mean"].mean(),
- "TMP": grouped["tmp_start"].first(),
- "R": grouped["R_scaled_start"].first(),
- "nuK": grouped["cycle_nuK"].first(),
- "slope": grouped["cycle_long_a"].first(),
- "power": grouped["cycle_long_b"].first(),
- "ceb_removal": grouped["cycle_R_removed"].first(),
- })
- return state_df.reset_index(drop=True)
|