7

import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import fetch_california_housing from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split from sklearn.metrics import mean_squared_error, r2_score from sklearn.pipeline import make_pipeline from sklearn.preprocessing import PolynomialFeatures, StandardScaler def linear_regression_california(): data = fetch_california_housing(as_frame=True) X = data.data[["AveRooms"]] y = data.target X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0) model = LinearRegression() model.fit(X_train, y_train) y_pred = model.predict(X_test) sorted_idx = X_test.values.flatten().argsort() plt.scatter(X_test, y_test, color="blue", label="Actual") plt.plot(X_test.values[sorted_idx], y_pred[sorted_idx], color="red", label="Predicted") plt.xlabel("AveRooms") plt.ylabel("Median Value") plt.title("Linear Regression - California Housing") plt.legend() plt.show() print("Linear Regression - California Housing") print("MSE:", mean_squared_error(y_test, y_pred)) print("R^2:", r2_score(y_test, y_pred)) def polynomial_regression_auto_mpg(): url = r"C:\Users\NEHA\Downloads\auto-mpg.data-original.csv" cols = ["mpg", "cyl", "disp", "hp", "wt", "acc", "yr", "origin"] data = pd.read_csv(url, sep='\s+', names=cols, na_values="?").dropna() X = data[["disp"]] y = data["mpg"] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0) model = make_pipeline(PolynomialFeatures(2), StandardScaler(), LinearRegression()) model.fit(X_train, y_train) y_pred = model.predict(X_test) plt.scatter(X_test, y_test, color="blue", label="Actual") plt.scatter(X_test, y_pred, color="red", label="Predicted") plt.xlabel("Displacement") plt.ylabel("MPG") plt.title("Polynomial Regression - Auto MPG") plt.legend() plt.show() print("Polynomial Regression - Auto MPG") print("MSE:", mean_squared_error(y_test, y_pred)) print("R^2:", r2_score(y_test, y_pred)) linear_regression_california() polynomial_regression_auto_mpg()

Comments

Popular posts from this blog

10

3

1