Random Forest Regressor

 # -*- coding: utf-8 -*-

"""

Created on Wed Nov  8 10:54:34 2023


@author: Syed Kamran Bukhari

"""


import numpy as np

import pandas as pd

import matplotlib.pyplot as plt


dataset = pd.read_csv("Position_Salaries.csv")

X= dataset.iloc[:,1:2].values

Y= dataset.iloc[:,-1].values


from sklearn.ensemble import RandomForestRegressor

regressor = RandomForestRegressor(n_estimators=90,random_state=0)

regressor.fit(X,Y)



Y_pred = regressor.predict([[6.5]])

print('The Predicted Salary is = ', Y_pred)



#visualizing the data

plt.scatter(X,Y, color='red')

plt.plot(X,regressor.predict(X), color='blue')

plt.xlabel('Salary')

plt.ylabel('Salary')

plt.title('Position vs Salary')

plt.show()



#high resolution plot

X_grid = np.arange(min(X),max(X),0.1)

X_grid=X_grid.reshape(len(X_grid),1)

plt.scatter(X,Y, color='red')

plt.plot(X_grid,regressor.predict(X_grid), color='blue')

plt.xlabel('Salary')

plt.ylabel('Salary')

plt.title('Position vs Salary')

plt.show()


Y_ideal=np.arange(min(Y),max(Y))

plt.scatter(Y, regressor.predict(X), color='red')

plt.plot(Y_ideal,Y_ideal, color='blue')

plt.xlabel('Original Values')

plt.ylabel('Predicted Values')

plt.title('Original vs Predicted Values')

plt.show()


ss= abs(Y-regressor.predict(X))

ss=ss.sum()/len(Y)

from math import sqrt

ss=sqrt(ss)

print('The RMSE score is =', ss)




#R2 score


from sklearn.metrics import r2_score


R2= r2_score(Y, regressor.predict(X))


print('The R2 score is =',R2)




#Durbin Watson Statistics


from statsmodels.stats.stattools import durbin_watson


DW = durbin_watson(abs(Y-regressor.predict(X)))


print('Durbin Watson Statistics =',DW)

Comments

Popular posts from this blog

PAKISTAN ANSWERS BACK TO INDIA

PRIME MINISTER OF PAKISTAN WINNING THE HEARTS OF THE POOR PAKISTANI PEOPLE.

LOCAL GOVERMENT SYSTEM OF ISLAMABAD THE CAPITAL