FDS Lab Manual
FDS Lab Manual
import numpy as np
class SimpleLinearRegression:
def __init__(self):
self.intercept_ = None
self.coefficient_ = None
if len(X.shape) == 1:
X = X.reshape(-1, 1)
X_with_intercept = np.c_[np.ones(X.shape[0]), X]
coefficients =
np.linalg.inv(X_with_intercept.T.dot(X_with_intercept)).dot(X_with_intercept.T).dot(y)
self.intercept_ = coefficients[0]
self.coefficient_ = coefficients[1]
if len(X.shape) == 1:
X = X.reshape(-1, 1)
# Example usage:
if __name__ == "__main__":
# Sample data
X = np.array([1, 2, 3, 4, 5])
y = np.array([2, 3, 4, 5, 6])
model = SimpleLinearRegression()
model.fit(X, y)
predictions = model.predict(X_new)
print("Predictions:", predictions)
OUTPUT:
Predictions: [[7.]
[8.]
[9.]]
EXPERIMENT-6:
import numpy as np
import pandas as pd
iris = load_iris()
X = iris.data
y = iris.target
param_grid = {
'min_samples_leaf': [1, 2, 4]
dtree = DecisionTreeClassifier()
grid_search.fit(X_train, y_train)
best_dtree = grid_search.best_estimator_
y_pred = best_dtree.predict(X_test)
# Calculate accuracy
print("\nAccuracy:", accuracy)
OUTPUT:
Accuracy: 1.0
EXPERIMENT-7:
import numpy as np
iris = load_iris()
X = iris.data
y = iris.target
k=3
knn_classifier = KNeighborsClassifier(n_neighbors=k)
knn_classifier.fit(X_train, y_train)
y_pred = knn_classifier.predict(X_test)
# Calculate accuracy
print("Accuracy:", accuracy)
OUTPUT:
Accuracy: 1.0
EXPERIMENT-8:
import numpy as np
iris = load_iris()
X = iris.data
y = iris.target
logistic_regression = LogisticRegression()
logistic_regression.fit(X_train, y_train)
y_pred = logistic_regression.predict(X_test)
# Calculate accuracy
print("Accuracy:", accuracy)
print("\nClassification Report:")
print(classification_report(y_test, y_pred))
OUTPUT:
Accuracy: 1.0
Classification Report:
precision recall f1-score support
accuracy 1.00 30
macro avg 1.00 1.00 1.00 30
weighted avg 1.00 1.00 1.00 30
EXPERIMENT-10:
import numpy as np
import pandas as pd
iris = load_iris()
X = iris.data
y = iris.target
# Initialize classifiers
classifiers = {
"Logistic Regression": LogisticRegression(),
results = {}
clf.fit(X_train, y_train)
y_pred = clf.predict(X_test)
# Display results
print(f"Classifier: {name}")
print(f"Accuracy: {result['Accuracy']:.4f}")
print("Classification Report:")
print(result["Classification Report"])
print("\n")
OUTPUT:
accuracy 1.00 30
macro avg 1.00 1.00 1.00 30
weighted avg 1.00 1.00 1.00 30
accuracy 1.00 30
macro avg 1.00 1.00 1.00 30
weighted avg 1.00 1.00 1.00 30
accuracy 1.00 30
macro avg 1.00 1.00 1.00 30
weighted avg 1.00 1.00 1.00 30
accuracy 1.00 30
macro avg 1.00 1.00 1.00 30
weighted avg 1.00 1.00 1.00 30
EXPERIMENT-9
Implementation of K-means clustering
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
from sklearn.cluster import KMeans