ML - Practical File

Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

MAHARSHI DAYANAND

UNIVERSITY

C.B.S GROUP OF INSTITUTION

MACHINE LEARNING LAB

• SUBMITTED BY :- SHILPI KUMARI


• SUBJECT CODE :- LC-CSE-412G
• REGISTRATION NO. :- 2013061150
• COURSE :- B.TECH CSE
• SESSION :- (2020-24)
Index
S.NO PROGRAMS DATE PAGE SIGN
NO.
1. Intro to data set. & How to run a data set on
anaconda(spider). & How to do different
operations on data set ex- conversion to
matrix, matrix addition, subtraction,
multiplications
2. Normalize the given matrix and find its
covariance.
3. Implement the PCA on two datasets (Iris, a
500 row and 5 col)
4. How to implement KNN on a dataset and
interpret its results
5. How to implement decision tree on a dataset
6. How to implement linear regression on a
dataset
7. How to implement Support vector machine
on a dataset
8. How to implement K-means algo on a
dataset
9. Implement the one ensemble method on a
dataset(bosting ,bagging, random forest)
10. Find the performance of all the above
practical and compare different results
(confusion, precision recall F1-score, Roc,
Median absolute deviation)
Shilpi Kumari 2013061150

PRACTICAL NO – 1

Aim: Intro to data set and how to run a data set on anaconda(spider). How to dodifferent operations
on data set ex- conversion to matrix, matrix addition, subtraction, multiplications.
(1.1) Intro to data set : A dataset is a collection of structured data that isused for machine learning
or statistical analysis. Datasets can come invarious formats, such as CSV, Excel, SQL
databases, and more.

(1.2) How to run a data set on anaconda(spider):

1. Open Anaconda Navigator: Open the Anaconda Navigator by clicking onthe Anaconda icon
in your applications folder or start menu.
2. Create a new environment (optional): If you want to create a new environment for your
dataset, click on the "Environments" tab and thenclick the "Create" button. Give your
environment a name, choose your Python version, and select the packages you want to
include.
3. Launch Spider: Click on the "Home" tab in Anaconda Navigator, then clickon the "Launch"
button under the "Spyder" icon to open the Spyder IDE.
4. Load the dataset: In the Spyder IDE, click on "File" in the top menu bar andselect "Open".
Navigate to the folder where your dataset is saved and selectit.
5. Analyze the dataset: Once your dataset is loaded, you can start analyzing it using Python
libraries such as NumPy, Pandas, Matplotlib, and more. For example, you can use Pandas to
read the CSV file, clean and preprocess thedata, and perform exploratory data analysis. You
can also use machine learning libraries like Scikit-learn to build models and make predictions
based on your dataset.

(1.3) How to do different operations on data set ex- conversion tomatrix, matrix addition,
subtraction, multiplications.

IRIS.cvs file

1
Shilpi Kumari 2013061150

import numpy as np

df = pd.read_csv(r'C:\Users\dell\OneDrive\Desktop\iris.csv')print(df)

OUTPUT :

import pandas as pdimport numpy as np


# Create a sample data set
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)
# Convert the data set to a matrixmatrix =
df.to_numpy()
# Create another matrix
matrix2 = np.array([[1, 0, 0], [0, 1, 0], [0, 0, 1]])
# Matrix addition
matrix_addition = matrix + matrix2
# Matrix subtraction matrix_subtraction = matrix -
matrix2
# Matrix multiplication
matrix_multiplication = np.matmul(matrix, matrix2)
# Print the results print("Original Data
Set:\n", df)
print("Data Set as a Matrix:\n", matrix)
print("Matrix 2:\n", matrix2)
print("Matrix Addition:\n", matrix_addition) print("Matrix Subtraction:\n",
matrix_subtraction) print("Matrix Multiplication:\n", matrix_multiplication)

2
Shilpi Kumari 2013061150

OUTPUT :

3
Shilpi Kumari 2013061150

PRACTICAL NO – 2

Aim: Normalize the given matrix and find its covariance


import pandas as pd
import numpy as np

# Create a sample DataFrame


data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)

# Normalize the DataFrame df_norm =


(df - df.mean()) / df.std()

# Find the covariance of the normalized DataFramecovariance_matrix =


df_norm.cov()

# Print the results


print("Original DataFrame:\n", df) print("Normalized
DataFrame:\n", df_norm) print("Covariance Matrix:\n",
covariance_matrix)

OUTPUT :

4
Shilpi Kumari 2013061150

PRACTICAL NO – 3

Aim: Implement the PCA on two datasets(Iris, a 500 row and 5 col)

import pandas as pd
import numpy as np
from sklearn.decomposition import PCAimport
matplotlib.pyplot as plt

# Generate a random dataset with 500 rows and 5 columnsnp.random.seed(42)


X = np.random.rand(500, 5)

# Perform PCA with two componentspca =


PCA(n_components=2)
X_pca = pca.fit_transform(X)

# Plot the results plt.scatter(X_pca[:, 0],


X_pca[:, 1])plt.xlabel('PC1')
plt.ylabel('PC2')
plt.show()

OUTPUT :

5
Shilpi Kumari 2013061150

PRACTICAL NO – 4
Aim: How to implement KNN on a dataset and interpret its results

from sklearn.datasets import load_iris


from sklearn.model_selection import train_test_split from
sklearn.neighbors import KNeighborsClassifier from
sklearn.metrics import accuracy_score

# Load the Iris datasetiris =


load_iris()

# Split the data into training and test sets


X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2,random_state=42)

# Train the KNN classifier with k=3


knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)

# Make predictions on the test sety_pred


= knn.predict(X_test)

# Compute the accuracy score


accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

OUTPUT :

6
Shilpi Kumari 2013061150

PRACTICAL NO – 5

Aim: How to implement decision tree on a dataset.

from sklearn.datasets import load_iris


from sklearn.model_selection import train_test_splitfrom
sklearn.tree import DecisionTreeClassifier from sklearn.metrics
import accuracy_score

# Load the Iris datasetiris =


load_iris()

# Split the data into training and test sets


X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2,random_state=42)

# Train the decision tree classifier


clf = DecisionTreeClassifier(random_state=42)
clf.fit(X_train, y_train)

# Make predictions on the test sety_pred


= clf.predict(X_test)

# Compute the accuracy score


accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

OUTPUT :

7
Shilpi Kumari 2013061150

PRACTICAL NO – 6
Aim: How to implement linear regression on a dataset

from sklearn.datasets import load_boston


from sklearn.linear_model import LinearRegressionfrom
sklearn.metrics import mean_squared_error from
sklearn.model_selection import train_test_splitimport numpy as
np

# Load the Boston housing datasetboston


= load_boston()

# Split the data into training and test sets


X_train, X_test, y_train, y_test = train_test_split(boston.data, boston.target,test_size=0.2,
random_state=42)

# Train the linear regression modellr =


LinearRegression() lr.fit(X_train, y_train)

# Make predictions on the test sety_pred


= lr.predict(X_test)

# Compute the mean squared error


mse = mean_squared_error(y_test, y_pred)
print("Mean squared error:", mse)

# Compute the coefficient of determination (R^2 score)r2 =


lr.score(X_test, y_test)
print("R^2 score:", r2)

OUTPUT :

8
Shilpi Kumari 2013061150

PRACTICAL NO – 7
Aim: How to implement Support vector machine on a dataset

from sklearn.datasets import load_breast_cancer from


sklearn.model_selection import train_test_splitfrom sklearn.svm
import SVC
from sklearn.metrics import accuracy_score

# Load the breast cancer datasetcancer =


load_breast_cancer()

# Split the data into training and test sets


X_train, X_test, y_train, y_test = train_test_split(cancer.data, cancer.target,test_size=0.2,
random_state=42)

# Train the SVM classifier


svm = SVC(kernel='linear', random_state=42)
svm.fit(X_train, y_train)

# Make predictions on the test sety_pred


= svm.predict(X_test)

# Compute the accuracy score


accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

OUTPUT :

9
Shilpi Kumari 2013061150

PRACTICAL NO – 8

Aim: How to implement K-means algo on a dataset

from sklearn.datasets import


make_blobsfrom sklearn.cluster
import KMeans import
matplotlib.pyplot as plt

# Generate a random dataset with 500 samples and 2 features


X, y = make_blobs(n_samples=500, centers=3, random_state=42)

# Create a KMeans object with 3 clusters


kmeans = KMeans(n_clusters=3, random_state=42)

# Fit the KMeans model to


the datakmeans.fit(X)

# Get the cluster labels and


centroidslabels = kmeans.labels_
centroids = kmeans.cluster_centers_

# Plot the data points and the


centroidsplt.scatter(X[:, 0], X[:, 1],
c=labels)
plt.scatter(centroids[:, 0], centroids[:, 1], marker='*', s=300, c='r')
plt.show()
OUTPUT :

10
Shilpi Kumari 2013061150

PRACTICAL NO – 9
Aim: Implement the one ensemble method on a dataset(bosting ,bagging, randomforest)

from sklearn.datasets import load_iris


from sklearn.ensemble import
BaggingClassifier from sklearn.tree import
DecisionTreeClassifier from
sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# Load the
iris dataset
iris =
load_iris()
X, y = iris.data, iris.target

# Split the dataset into training and test sets


X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# Create a decision tree


classifierclf =
DecisionTreeClassifier()

# Create a bagging classifier with 10 estimators


bagging_clf = BaggingClassifier(base_estimator=clf, n_estimators=10,
random_state=42)

# Fit the bagging classifier to the training data


bagging_clf.fit(X_train, y_train)

# Predict the class labels for the test


sety_pred =
bagging_clf.predict(X_test)

# Calculate the accuracy score of the


modelaccuracy =
accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)

OUTPUT :

11
Shilpi Kumari 2013061150

PRACTICAL NO – 10
Aim: Find the performance of all the above practical and compare different results(
confusion, precision recall F1-score, Roc, Median absolute deviation)

from sklearn.metrics import confusion_matrix, classification_report, roc_curve, auc,


median_absolute_error
import matplotlib.pyplot as plt

# y_true is the true labels of the test set, and y_pred is the predicted labels of the test set#
you can obtain y_pred by calling the predict() method of your trained model
y_true = [0, 1, 0, 1, 0, 1, 1, 0]
y_pred = [1, 1, 0, 1, 0, 0, 1, 0]

# calculate the confusion matrix


conf_mat = confusion_matrix(y_true,
y_pred)print('Confusion Matrix:\n',
conf_mat)

# calculate the precision, recall, F1-score, and support for each class
precision, recall, f1_score, support = precision_recall_fscore_support(y_true, y_pred,
average=None)
print('Precision:',
precision)
print('Recall:',
recall) print('F1-
score:', f1_score)
print('Support:',
support)

# calculate the ROC curve and AUC score


fpr, tpr, thresholds = roc_curve(y_true,
y_pred)roc_auc = auc(fpr, tpr)
plt.figure()
plt.plot(fpr, tpr, color='darkorange', lw=2, label='ROC curve (AUC = %0.2f)' %
roc_auc)
plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--')
plt.xlim([0.0, 1.0])
plt.ylim([0.0, 1.05])
plt.xlabel('False
Positive Rate')
plt.ylabel('True
Positive Rate')
plt.title('Receiver Operating
Characteristic')plt.legend(loc="lower

12
Shilpi Kumari 2013061150

right")
plt.show()
# calculate the median absolute deviation
mad = median_absolute_error(y_true,
y_pred)print('Median Absolute
Deviation:', mad)

OUTPUT :

13

You might also like