# Complete ML workflow def ml_workflow(data, target_column): # 1. Split features and target X = data.drop(target_column, axis=1) y = data[target_column] # 2. Train/test split X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2) # 3. Create pipeline pipeline = Pipeline([ ('scaler', StandardScaler()), ('model', RandomForestRegressor()) ]) # 4. Train model pipeline.fit(X_train, y_train) # 5. Evaluate score = pipeline.score(X_test, y_test) return pipeline, score # Usage model, accuracy = ml_workflow(df, 'weight') print(f"Model accuracy: {accuracy:.2f}")