ML Lab Programs
ML Lab Programs
import numpy as np
import pandas as pd
X = dataset.iloc[:, :-1].values
y = dataset.iloc[:, -1].values
## Splitting the dataset into the Training set and Test set
regressor = LinearRegression()
regressor.fit(X_train, y_train)
y_pred = regressor.predict(X_test)
plt.xlabel('Years of Experience')
plt.ylabel('Salary')
plt.show()
plt.xlabel('Years of Experience')
plt.ylabel('Salary')
plt.show()
Implementation of Logistic Regression
import numpy as np
import pandas as pd
df = pd.read_csv("/content/Social_Network_Ads (1).csv")
df.head()
x = df[['Age','EstimatedSalary']]
x.head()
y = df['Purchased']
y.head()
sc= StandardScaler()
x_train = sc.fit_transform(x_train)
x_test = sc.fit_transform(x_test)
lr = LogisticRegression()
lr.fit(x_train,y_train)
y_pred = lr.predict(x_test)
accuracy_score(y_test,y_pred)
lr.score(x_test,y_test)
#check
lr.predict(sc.transform([[19,19000]]))
import pandas as pd
dataset = pd.read_csv('Social_Network_Ads.csv')
dataset.head()
dataset.Purchased.value_counts()
X = dataset.iloc[:, :-1].values
y = dataset.iloc[:, -1].values
from sklearn.model_selection import train_test_split
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)
SV_classifier.fit(X_train, y_train)
y_pred_SVC = SV_classifier.predict(X_test)
print(classification_report(y_test, y_pred_SVC))
NB_classifier = GaussianNB()
NB_classifier.fit(X_train, y_train)
y_pred_NB = NB_classifier.predict(X_test)
print(classification_report(y_test,y_pred_NB))
Implementation of K NEAREST NEIGHBOURS KNN
#importing libraries and dataset from sklearn
import sklearn
import pandas as pd
import numpy as np
%matplotlib inline
iris = load_iris()
df = pd.concat([
(pd.DataFrame(data=iris['data'], columns=iris['feature_names'])),
(pd.DataFrame(data=iris['target'], columns=['target']))],
axis=1)
#labels
df.columns
Index(['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)', 'target'],
dtype='object')
#values
df.values
df.describe()
sns.set(style="ticks")
sns.pairplot(df, hue="target", palette={"setosa": "red", "versicolor": "yellow", "virginica": "blue"})
plt.legend(loc='upper right')
plt.show()
sns.set(style="whitegrid")
plt.figure(figsize=(10, 6))
plt.show()
X = df.drop('target', axis=1)
y = df['target']
len(X_train), len(X_test)
knn = KNeighborsClassifier(n_neighbors=10)
knn.fit(X_train, y_train)
y_pred = knn.predict(X_test)
y_pred
y_test
39 setosa
46 setosa
60 versicolor …….
accuracy_score(y_test,y_pred)
0.9666666666666667
print(classification_report(y_test, y_pred))
confusion_matrix(y_test, y_pred)
df.sample()
new_data = pd.DataFrame({
})
new_data
predicted_class = knn.predict(new_data)
predicted_class
array(['setosa'], dtype=object)
predicted_class_name = predicted_class[0]
predicted_class_name
setosa
Implementation of K Means
import plotly.express as px
wcss = []
kmeans.fit(x)
wcss.append(kmeans.inertia_)
fig.show()
y_kmeans = kmeans.fit_predict(x)
plt.legend()
kmeans = KMeans(n_clusters = 3, init = 'k-means++',
y_kmeans = kmeans.fit_predict(x)
plt.legend()
kmeans = KMeans(n_clusters=3, init='k-means++', max_iter=300, n_init=10, random_state=2041)
kmeans.fit(x)
new_cluster_assignment = kmeans.predict(new_data)
import warnings
warnings.filterwarnings("ignore")
#formation of clusters with varied values of 'k'
import numpy as np
iris = load_iris()
X = iris.data
y = iris.target
max_clusters = 10
fig, ax = plt.subplots()
def update(frame):
ax.clear()
kmeans.fit(X)
cluster_labels = kmeans.labels_
ax.legend(loc='upper right')
HTML(ani.to_jshtml())
data = load_iris()
df = pd.DataFrame(data["data"], columns=data["feature_names"])
df
df["target"] = data["target"]
df
df
feature_cols = ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']
X1 = df[feature_cols] # Features
y1 = df.target
clf=clf.fit(X_train, y_train)
y_pred=clf.predict(X_test)
print("Accuracy:",metrics.accuracy_score(y_test, y_pred))
import pydotplus
dot_data = StringIO()
clf
export_graphviz(clf, out_file=dot_data,
filled=True, rounded=True,
special_characters=True,class_names=['0','1','2'])
graph = pydotplus.graph_from_dot_data(dot_data.getvalue())
graph.write_png('flower_data.png')
Image(graph.create_png())
Implementation of Random Forest
# Data Processing
import pandas as pd
import numpy as np
import pandas as pd
dataset=pd.read_csv("/content/drive/MyDrive/Colab Notebooks/BostonHousing.csv")
dataset
X = pd.DataFrame(dataset.iloc[:,:-1])
X
y=pd.DataFrame(dataset.iloc[:,-1])
X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.20)
regressor=RandomForestRegressor(n_estimators=20,random_state=0)
regressor.fit(X_train,y_train)
y_pred=regressor.predict(X_test)