k means in python


import numpy as np
import pandas as pd
from scipy.spatial.distance import pdist, squareform
num_instances = int(input("Enter number of instances (rows): "))
num_attributes = int(input("Enter number of attributes (columns): "))
data = []
for i in range(num_instances):
    print(f"\nEnter values for Instance {i+1}:")
    row = []
    for j in range(num_attributes):
        value = float(input(f" Attribute {j+1}: "))
        row.append(value)
    data.append(row)
df = pd.DataFrame(data, columns=[f'Attribute{j+1}' for j in range(num_attributes)])
print("\nDataset:")
print(df)
dissimilarity = pdist(df.values, metric='euclidean')
dissimilarity_matrix = squareform(dissimilarity)
instance_labels = [f'Instance{i+1}' for i in range(num_instances)]
dissimilarity_df = pd.DataFrame(dissimilarity_matrix,     index=instance_labels,        columns=instance_labels)
print("\nDissimilarity Matrix:")
print(dissimilarity_df)



"""
OUTPUT:



Enter number of instances (rows): 4
Enter number of attributes (columns): 2

Enter values for Instance 1:
  Attribute 1: 2
  Attribute 2: 3

Enter values for Instance 2:
  Attribute 1: 5
  Attribute 2: 8

Enter values for Instance 3:
  Attribute 1: 1
  Attribute 2: 2

Enter values for Instance 4:
  Attribute 1: 6
  Attribute 2: 7

Dataset:
   Attribute1 Attribute2
0 2.0 3.0
1 5.0 8.0
2 1.0 2.0
3 6.0 7.0

Dissimilarity Matrix:
           Instance1 Instance2 Instance3 Instance4
Instance1 0.000000 5.830952 1.414214 5.656854
Instance2 5.830952 0.000000 7.211103 1.414214
Instance3 1.414214 7.211103 0.000000 7.071068
Instance4 5.656854 1.414214 7.071068 0.000000
"""

Comments

Popular posts from this blog

Dijkstra's Algorithm Matrix

k means JDK java

Chi square test