diff --git a/data_platform/daily_all_update.py b/data_platform/daily_all_update.py index 045e9d71..491c5be2 100644 --- a/data_platform/daily_all_update.py +++ b/data_platform/daily_all_update.py @@ -821,6 +821,12 @@ def run_15min_update(codes: List[str], local_conn: sqlite3.Connection) -> dict: existing = pd.read_parquet(parquet_path) existing["day"] = existing["day"].astype(str) + # 统一类型:旧数据volume/amount可能是str,新数据是float + for col in ["volume", "amount", "open", "high", "low", "close"]: + if col in existing.columns: + existing[col] = pd.to_numeric(existing[col], errors="coerce").fillna(0) + if col in df_increment.columns: + df_increment[col] = pd.to_numeric(df_increment[col], errors="coerce").fillna(0) combined = pd.concat([existing, df_increment], ignore_index=True) combined = combined.sort_values("day").reset_index(drop=True) new_rows = len(df_increment)