Challenge

Project 1

In this project I was learn to check accuracy of given dataset using different algorithms like Logistic Regression,KNN,SVM,DT,RF algorithms.

import time
Start_time = time.time()
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score,confusion_matrix
import matplotlib.pyplot as plt

#Logistic Regression
data = pd.read_csv(r"C:UserssambaDownloadsheart.csv")
data.head()
data.isna().sum().sum()
data.isnull().sum().sum()
data.info()
data = data.astype("float64")

features = list(set(data.columns)-set(["output"]))
target = list(["output"])

x = data[features].values
y = data[target].values

train_x,test_x,train_y,test_y = train_test_split(x,y,test_size = 0.3,random_state=0)

scaler = StandardScaler()
scaler.fit(train_x)
train_x =scaler.transform(train_x)
test_x = scaler.transform(test_x)

logistic = LogisticRegression()
logistic.fit(train_x,train_y.ravel())

pred_logistic = logistic.predict(test_x)
print(pred_logistic)

confusion_matrix = confusion_matrix(pred_logistic,test_y)
print(confusion_matrix)

import seaborn as sns
plt.figure(figsize=(10,10))
sns.heatmap(confusion_matrix,annot=True)
plt.xlabel("Predicted")
plt.ylabel("Actual")
plt.show()

accuracy_logistic = accuracy_score(pred_logistic,test_y)
print("accuracy_score_logistic :",accuracy_logistic)

print("Misclassified Samples :",(test_y != pred_logistic).sum())
print("Classified Samples:",(test_y == pred_logistic).sum())

# KNN
from sklearn.neighbors import KNeighborsClassifier
import matplotlib.pyplot as plt
data = pd.read_csv(r"C:UserssambaDownloadsheart.csv")
data.head()
data.isna().sum().sum()
data.isnull().sum().sum()
data.info()
data = data.astype("float64")

features = list(set(data.columns)-set(["output"]))
target = list(["output"])

x = data[features].values
y = data[target].values

train_x,test_x,train_y,test_y = train_test_split(x,y,test_size = 0.3,random_state=3)

scaler = StandardScaler()
scaler.fit(train_x)
train_x =scaler.transform(train_x)
test_x = scaler.transform(test_x)

KNN = KNeighborsClassifier(n_neighbors = 3)
KNN.fit(train_x,train_y.ravel())

pred_KNN = KNN.predict(test_x)
print(pred_KNN)
#confusion_matrix = confusion_matrix(test_y.ravel(),pred_KNN)
#print(confusion_matrix)
accuracy_KNN = accuracy_score(test_y,pred_KNN)
print("accuracy_KNN:",accuracy_KNN)

'''import seaborn as sns
plt.figure(figsize=(10,10))
sns.heatmap(confusion_matrix,annot=True)
plt.xlabel("Predicted")
plt.ylabel("Actual")
plt.show()'''


print('Misclassified samples: %d' % (test_y != pred_KNN).sum())

Misclassifiedsample = []
for i in range(1,20):
knn = KNeighborsClassifier(n_neighbors = i)
knn.fit(train_x,train_y.ravel())
pred_i = knn.predict(test_x)
Misclassifiedsample.append((test_y !=pred_i).sum())
print(Misclassifiedsample)

plt.figure(figsize=(8,8))
plt.plot(range(1,20,1),Misclassifiedsample,color = 'red',linestyle = 'dashed',
marker = '*',markerfacecolor = 'blue',markersize =10)
plt.title("Effect of K")
plt.xlabel("K Value")
plt.ylabel("Misclassified samples")
plt.show()

# RandomForest Classifier
from sklearn.metrics import mean_squared_error
from pprint import pprint
from sklearn.model_selection import RandomizedSearchCV
from sklearn.ensemble import RandomForestClassifier
data = pd.read_csv(r"C:UserssambaDownloadsheart.csv")
data.head()
data.isna().sum().sum()
data.isnull().sum().sum()
data.info()
data = data.astype("float64")

features = list(set(data.columns)-set(["output"]))
target = list(["output"])

x = data[features].values
y = data[target].values

train_x,test_x,train_y,test_y = train_test_split(x,y,test_size = 0.3,random_state=1)

base_pred = data[target].mean().values
base_pred = np.repeat(base_pred,len(test_y))

base_rmse = (mean_squared_error(test_y,base_pred))**0.5

scaler = StandardScaler()
scaler.fit(train_x)
train_x =scaler.transform(train_x)
test_x = scaler.transform(test_x)

rf = RandomForestClassifier(n_estimators=100,random_state=1)
rf.fit(train_x,train_y.ravel())

pred_rf = rf.predict(test_x)

rf_rmse = (mean_squared_error(test_y,pred_rf))**0.5
rf_rmse

#confusion_matrix = confusion_matrix(test_y.ravel(),pred_rf)
#print(confusion_matrix)

"""import seaborn as sns
plt.figure(figsize=(10,10))
sns.heatmap(confusion_matrix,annot=True)
plt.xlabel("Predicted")
plt.ylabel("Actual")
plt.show()'"""

accuracy_RF = accuracy_score(test_y,pred_rf)
print("accuracy_RF:",accuracy_RF)

# SVM
from seaborn import pairplot
from sklearn.svm import SVC
data = pd.read_csv(r"C:UserssambaDownloadsheart.csv")
data.head()
data.isna().sum().sum()
data.isnull().sum().sum()
data.info()
data = data.astype("float64")

features = list(set(data.columns)-set(["output"]))
target = list(["output"])
x = data[features].values
y = data[target].values

train_x,test_x,train_y,test_y = train_test_split(x,y,test_size = 0.3,random_state=100)

clf = SVC(kernel = 'linear')
clf.fit(train_x,train_y.ravel())

pred_clf = clf.predict(test_x)
print(pred_clf[:5])
#confusion_matrix = confusion_matrix(test_y.ravel(),pred_clf)
#print(confusion_matrix)

'''import seaborn as sns
plt.figure(figsize=(10,10))
sns.heatmap(confusion_matrix,annot=True)
plt.xlabel("Predicted")
plt.ylabel("Actual")
plt.show()'''

accuracy_clf = accuracy_score(test_y,pred_clf)
print("accuracy_SVM:",accuracy_clf)

# Decision Tree Classifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import classification_report
data = pd.read_csv(r"C:UserssambaDownloadsheart.csv")
data.head()
data.isna().sum().sum()
data.isnull().sum().sum()
data.info()
data = data.astype("float64")

features = list(set(data.columns)-set(["output"]))
target = list(["output"])
x = data[features].values
y = data[target].values

train_x,test_x,train_y,test_y = train_test_split(x,y,test_size = 0.3,random_state=100)
clf_gini = DecisionTreeClassifier(criterion = 'gini',random_state=100,max_depth = 3,min_samples_leaf = 5)
clf_gini.fit(train_x,train_y)
pred_DT = clf_gini.predict(test_x)
#confusion_matrix = confusion_matrix(test_y.ravel(),pred_DT)
#print(confusion_matrix)

'''import seaborn as sns
plt.figure(figsize=(10,10))
sns.heatmap(confusion_matrix,annot=True)
plt.xlabel("Predicted")
plt.ylabel("Actual")
plt.show()'''

accuracy_DT = accuracy_score(test_y,pred_DT)
print("accuracy_DT:",accuracy_DT)

classification_report(test_y,pred_DT)

print("Accuracy Details of Different algorithms")
print("accuracy_score_logistic :",accuracy_logistic)
print("accuracy_KNN:",accuracy_KNN)
print("accuracy_RF:",accuracy_RF)
print("accuracy_SVM:",accuracy_clf)
print("accuracy_DT:",accuracy_DT)
End_time = time.time()
print(Start_time)
print(End_time)
print('Time taken:',End_time-Start_time)

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.