Untitled

 avatar
unknown
plain_text
a year ago
1.1 kB
2
Indexable
# Step 1: Import necessary libraries
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn import metrics

# Step 2: Create a DataFrame from the dataset
data = {'Hours Studied': [2, 3, 4, 5, 6],
        'Test Score': [65, 75, 82, 88, 95]}
df = pd.DataFrame(data)

# Step 3: Visualization
plt.scatter(df['Hours Studied'], df['Test Score'])
plt.title('Hours Studied vs Test Score')
plt.xlabel('Hours Studied')
plt.ylabel('Test Score')
plt.show()

# Step 4: Model Training
X = df['Hours Studied'].values.reshape(-1, 1)
y = df['Test Score'].values
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)

# Step 5: Model Evaluation
y_pred = model.predict(X_test)
mse = metrics.mean_squared_error(y_test, y_pred)
print(f'Mean Squared Error: {mse}')

# Step 6: Prediction
new_hours = np.array([7, 8]).reshape(-1, 1)
predicted_scores = model.predict(new_hours)
print(f'Predicted Scores for 7 and 8 hours: {predicted_scores}')
Leave a Comment