import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
# Pattern dataset: Home dimension (sq ft) and worth (in {dollars})
information = pd.DataFrame({
‘Measurement’: [1500, 1800, 2400, 3000, 3500, 4000, 4200, 5000],
‘Value’: [300000, 350000, 450000, 550000, 600000, 650000, 700000, 800000]
})
# Cut up the information
X = information[[‘Size’]]
y = information[‘Price’]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)
# Practice the linear regression mannequin
mannequin = LinearRegression()
mannequin.match(X_train, y_train)
# Predictions on the take a look at set
predictions = mannequin.predict(X_test)
# Calculate residuals
residuals = y_test – predictions
# Create a residual plot
plt.determine(figsize=(8, 6))
plt.scatter(predictions, residuals, coloration=’purple’, alpha=0.7)
plt.hlines(y=0, xmin=predictions.min(), xmax=predictions.max(), colours=’purple’, linestyles=’–‘)
plt.xlabel(‘Predicted Costs’)
plt.ylabel(‘Residuals’)
plt.title(‘Residual Plot’)
plt.grid(True)
plt.present()
print(“Residuals:”)
print(residuals)