Regression

๐Ÿ“ฆ Import Libraries

import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import LabelEncoder, StandardScaler
from sklearn.linear_model import LinearRegression
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error, r2_score

import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense

๐Ÿ“‚ Load Data

df = pd.read_csv(“data.csv”) # ๐Ÿ” Replace with your dataset
df = df.fillna(method=’ffill’) # โœ… Handle missing values

๐Ÿงน Encode categorical features

le = LabelEncoder()
for col in df.select_dtypes(include=’object’).columns:
df[col] = le.fit_transform(df[col])

๐ŸŽฏ Split into features and target

X = df.drop(“target”, axis=1) # ๐Ÿ” Replace ‘target’
y = df[“target”]

๐Ÿ”ƒ Scale features

scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

๐Ÿ”€ Train-Test Split

X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)

โœ… SKLEARN: Linear Regression

lr_model = LinearRegression()
lr_model.fit(X_train, y_train)
y_pred_lr = lr_model.predict(X_test)

print(“\n[Linear Regression Results]”)
print(“MSE:”, mean_squared_error(y_test, y_pred_lr))
print(“Rยฒ Score:”, r2_score(y_test, y_pred_lr))

โœ… SKLEARN: Random Forest Regressor

rf_model = RandomForestRegressor()
rf_model.fit(X_train, y_train)
y_pred_rf = rf_model.predict(X_test)

print(“\n[Random Forest Regression Results]”)
print(“MSE:”, mean_squared_error(y_test, y_pred_rf))
print(“Rยฒ Score:”, r2_score(y_test, y_pred_rf))

โœ… TENSORFLOW: Deep Learning Regressor

model = Sequential()
model.add(Dense(128, activation=’relu’, input_shape=(X_train.shape[1],)))
model.add(Dense(64, activation=’relu’))
model.add(Dense(1)) # No activation for regression output

model.compile(optimizer=’adam’, loss=’mse’, metrics=[tf.keras.metrics.RootMeanSquaredError()])
model.fit(X_train, y_train, epochs=10, batch_size=16, validation_split=0.1)

loss, rmse = model.evaluate(X_test, y_test)
y_pred_dl = model.predict(X_test).flatten()

print(“\n[TensorFlow Regression Results]”)
print(“Test RMSE:”, rmse)
print(“Rยฒ Score:”, r2_score(y_test, y_pred_dl))