0% found this document useful (0 votes)
6 views

Lab 4 solved (1)

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Lab 4 solved (1)

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

11/7/24, 7:47 AM Lab 4 solved (1)

2022F-BSE-014
LAB # 04
SUPERVISED LEARNING (NAÏVE BAYES ALGORITHM)

OBJECTIVE

Implementing supervised learning, Naïve Bayes algorithm for training, testing and classification.

Lab Tasks:

Fig 1

1. Implement Naïve Bayes Algorithm on the above dataset in Fig 1 to predict whether the players can
play or not when the weather is overcast and the temperature is mild.

In [74]: from sklearn import preprocessing


from sklearn.naive_bayes import GaussianNB
from sklearn.metrics import confusion_matrix, accuracy_score
from sklearn.model_selection import train_test_split

In [75]: le = preprocessing.LabelEncoder()
weather = ['sunny','sunny','overcast','rainy','rainy','rainy','overcast','sunny','sunny','rain
temperature = ['hot','hot','hot','mild','cool','cool','cool','mild','cool','mild','mild','mild
play = ['no','no','yes','yes','yes','no','yes','no','yes','yes','yes','yes','yes','no']

file:///C:/Users/DC/Downloads/Lab 4 solved (1).html 1/6


11/7/24, 7:47 AM Lab 4 solved (1)

In [ ]:

In [76]: le = preprocessing.LabelEncoder()
weather_encoded = le.fit_transform(weather)
temperature_encoded = le.fit_transform(temperature)
play_encoded = le.fit_transform(play)

In [77]: features = list(zip(weather_encoded,temperature_encoded))


features_train,features_test,label_train,label_test = train_test_split(features,play_encoded,t

In [78]: model = GaussianNB()


model.fit(features_train,label_train)

Out[78]: ▾ GaussianNB i ?

GaussianNB()

In [79]: predicted = model.predict(features_test)


print(predicted)

[1 0 0]

In [80]: conf_mat = confusion_matrix(label_test,predicted)


print(conf_mat)

[[1 0]
[1 1]]

In [81]: accuracy = accuracy_score(predicted,label_test)


print(accuracy)

0.6666666666666666

In [ ]:

file:///C:/Users/DC/Downloads/Lab 4 solved (1).html 2/6


11/7/24, 7:47 AM Lab 4 solved (1)

In [82]: from sklearn import preprocessing


from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import train_test_split
from sklearn.metrics import confusion_matrix,accuracy_score

In [83]: age = ['youth','youth','middle_aged','senior','senior','senior','middle_aged','youth','youth',


income = ['high','high','high','medium','low','low','low','medium','low','medium','medium','me
student =['no','no','no','no','yes','yes','yes','no','yes','yes','yes','no','yes','no']
credit_rating = ['fair','excellent','fair','fair','fair','excellent','excellent','fair','fair'
class_buys_computer = ['no','no','yes','yes','yes','no','yes','no','yes','yes','yes','yes','ye

In [84]: le = preprocessing.LabelEncoder()
age_encoded = le.fit_transform(age)
income_encoded = le.fit_transform(income)
student_encoded = le.fit_transform(student)
credit_rating_encoded = le.fit_transform(credit_rating)
class_buyes_computer_encoded = le.fit_transform(class_buys_computer)

In [85]: features = list(zip(age_encoded,income_encoded,student_encoded,credit_rating_encoded,class_buy


features_train,features_test,label_train,label_test = train_test_split(features,class_buyes_co

In [86]: model = GaussianNB()


model.fit(features_train,label_train)

Out[86]: ▾ GaussianNB i ?

GaussianNB()

In [87]: predicted = model.predict(features_test)


print(predicted)

[1 1 0]

In [88]: conf_mat = confusion_matrix(label_test, predicted)


print(conf_mat)

[[1 0]
[0 2]]

In [89]: accuracy = accuracy_score(label_test,predicted)


print(accuracy)

1.0

home task

In [90]: from sklearn import preprocessing


from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import train_test_split
from sklearn.metrics import confusion_matrix, accuracy_score
import pandas as pd

In [91]: df = pd.read_csv('random_dataset.csv')
age = df['Age']
salary = df['Salary']
experience = df['Experience']
education = df['Education Level']
isEmployed = df['Is Employed']

file:///C:/Users/DC/Downloads/Lab 4 solved (1).html 3/6


11/7/24, 7:47 AM Lab 4 solved (1)

In [92]: le = preprocessing.LabelEncoder()
age_encoded = le.fit_transform(age)
salary_encoded = le.fit_transform(salary)
experience_encoded = le.fit_transform(experience)
education_encoded = le.fit_transform(education)
isEmployed_encoded = le.fit_transform(isEmployed)

In [93]: features = list(zip(age_encoded,salary_encoded,experience_encoded,education_encoded))

In [94]: features_train,features_test,label_train,label_test = train_test_split(features,isEmployed,tes

In [95]: model = GaussianNB()


model.fit(features_train,label_train)

Out[95]: ▾ GaussianNB i ?

GaussianNB()

In [96]: predicted = model.predict(features_test)


print(predicted)

[1 1 1 1 1 0 1 1 1 1 1 1 0 0 1 0 1 0 0 1]

In [97]: conf_mat = confusion_matrix(predicted,label_test)


print(conf_mat)

[[ 4 2]
[ 4 10]]

In [98]: accuracy = accuracy_score(predicted,label_test)


print(accuracy)

0.7

from github:

file:///C:/Users/DC/Downloads/Lab 4 solved (1).html 4/6


11/7/24, 7:47 AM Lab 4 solved (1)

file:///C:/Users/DC/Downloads/Lab 4 solved (1).html 5/6


11/7/24, 7:47 AM Lab 4 solved (1)

In [ ]:

file:///C:/Users/DC/Downloads/Lab 4 solved (1).html 6/6

You might also like