Skip to content
This repository has been archived by the owner on Nov 14, 2022. It is now read-only.

Commit

Permalink
Added solution
Browse files Browse the repository at this point in the history
  • Loading branch information
Erik3003 committed Dec 14, 2020
1 parent 1a0442c commit 95e18b6
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions kMeansClustering.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,21 @@ class KMeansClustering:

def __init__(self, k, data):
self.k = k # Anzahl der Cluster/Mittelwertvektoren
self.means = data[0:k] # Mittelwertvektoren
self.means = data[:k] # Mittelwertvektoren
self.array = data # Array mit Daten
self.groups = np.zeros(len(data)) # Clusterzugehörigkeit der Daten

def calculate_means(self):
# Hier bearbeiten und neue Mittelwertvektoren ermitteln
pass
self.means = [[0.] * len(self.array[0])] * self.k
divider = [0] * self.k
for i in range(len(self.array)):
group = int(self.groups[i])
divider[group] = divider[group] + 1
self.means[group] = np.add(self.means[group], self.array[i]).tolist()

for i in range(self.k):
self.means[i] = np.divide(self.means[i], divider[i]).tolist()

def cluster_data(self):
# Ordnet die Daten den Clustern zu
Expand Down Expand Up @@ -60,9 +67,4 @@ def get_color(self, n):
while not cluster.cluster_data():
cluster.calculate_means()

if np.array_equal(cluster.groups, iris.target):
print("Aufgabe erfolgreich beendet!")
else:
print("Da muss noch was getan werden!")

cluster.visualize()

0 comments on commit 95e18b6

Please sign in to comment.