if analysis_type == "numeric_mean": numeric_result = {} for col in available_target_columns: series = pd.to_numeric(filtered_df[col], errors="coerce") valid_count = int(series.notna().sum()) numeric_result[col] = { "mean": float(series.mean()) if valid_count > 0 else None, "valid_count": valid_count } result["result"] = numeric_result