-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathmodel_evaluation.py
More file actions
20 lines (19 loc) · 908 Bytes
/
Copy pathmodel_evaluation.py
File metadata and controls
20 lines (19 loc) · 908 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score
import math
"""
Parameters:
- true_values: Actual target values.
- predicted_values: Predicted target values by the model.
"""
def evaluate(true_values, predicted_values):
mae = mean_absolute_error(true_values, predicted_values) # Calculate Mean Absolute Error
mse = mean_squared_error(true_values, predicted_values) # Calculate Mean Squared Error
rmse = math.sqrt(mse)
r2 = r2_score(true_values, predicted_values) # Calculate R-squared Score
return mae, mse, rmse, r2
def print_evaluation(true_values, predicted_values):
mae, mse, rmse, r2 = evaluate(true_values, predicted_values)
print(f"Mean Absolute Error (MAE): {mae:.4f}")
print(f"Mean Squared Error (MSE): {mse:.4f}")
print(f"Root Mean Squared Error (RMSE): {rmse:.4f}")
print(f"R-squared (R2): {r2:.4f}")