Advertisement
brandblox

Lab_ML(17/03/25)

Mar 17th, 2025
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.17 KB | None | 0 0
  1. # %%
  2. from sklearn.cluster import KMeans
  3. import pandas as pd
  4. from sklearn.preprocessing import MinMaxScaler
  5. from  matplotlib import pyplot as plt
  6. from  sklearn.datasets import load_iris
  7. import matplotlib
  8.  
  9. # %%
  10. iris = load_iris()
  11.  
  12. # %%
  13. df = pd.DataFrame(iris.data, columns=iris.feature_names)
  14. df.head()
  15.  
  16. # %%
  17. df['flower'] = iris.target
  18. df.head()
  19.  
  20. # %%
  21. df.drop(['sepal length (cm)','sepal width (cm)','flower'],axis='columns',inplace=True)
  22.  
  23. # %%
  24. df.head(3)
  25.  
  26. # %%
  27. km = KMeans(n_clusters=3)
  28. yp = km.fit_predict(df)
  29. yp
  30.  
  31. # %%
  32. df['cluster'] = yp
  33. df.head(2)
  34.  
  35. # %%
  36. df.cluster.unique()
  37.  
  38. # %%
  39. df1 = df[df.cluster==0]
  40. df2 = df[df.cluster==1]
  41. df3 = df[df.cluster==2]
  42.  
  43. # %%
  44. plt.scatter(df1['petal length (cm)'],df1['petal width (cm)'],color='blue')
  45. plt.scatter(df2['petal length (cm)'],df2['petal width (cm)'],color='green')
  46. plt.scatter(df3['petal length (cm)'],df3['petal width (cm)'],color='yellow')
  47.  
  48. # %%
  49. sse = []
  50. k_rng = range(1,10)
  51. for k in k_rng:
  52.     km = KMeans(n_clusters=k)
  53.     km.fit(df)
  54.     sse.append(km.inertia_)
  55.  
  56. plt.xlabel('K')
  57. plt.ylabel('Sum of squared error')
  58. plt.plot(k_rng,sse)
  59. plt.title('The Elbow Method showing the optimal value of k')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement