aboutsummaryrefslogtreecommitdiffstats
path: root/Metrics/Metrics-Calculation/metrics_plot/src/test.py
diff options
context:
space:
mode:
Diffstat (limited to 'Metrics/Metrics-Calculation/metrics_plot/src/test.py')
-rw-r--r--Metrics/Metrics-Calculation/metrics_plot/src/test.py59
1 files changed, 28 insertions, 31 deletions
diff --git a/Metrics/Metrics-Calculation/metrics_plot/src/test.py b/Metrics/Metrics-Calculation/metrics_plot/src/test.py
index d1aae53a..0212cc2a 100644
--- a/Metrics/Metrics-Calculation/metrics_plot/src/test.py
+++ b/Metrics/Metrics-Calculation/metrics_plot/src/test.py
@@ -1,35 +1,32 @@
1from sklearn.datasets import load_digits 1from pyclustering.cluster.kmedoids import kmedoids
2from sklearn.manifold import MDS 2from pyclustering.utils import read_sample
3import matplotlib.pyplot as plt 3from pyclustering.samples.definitions import FCPS_SAMPLES
4from scipy import stats 4from pyclustering.utils.metric import distance_metric, type_metric
5import numpy as np 5import matplotlib.pyplot as plt
6 6
7dist = [] 7# metric = distance_metric(type_metric.MINKOWSKI, degree=2)
8# print(metric([1,1], [2,2]))
8 9
9for i in range(100): 10# Load list of points for cluster analysis.
10 rvs = stats.uniform.rvs(size=500, loc=0., scale=1) 11sample = [[1,1,1], [2,2,2],[3,3,3]]
11 dist.append(rvs)
12 12
13for i in range(100): 13# Set random initial medoids.
14 rvs2 = stats.powerlaw .rvs(1.66, size=500) 14initial_medoids = [1, 1 ,1]
15 dist.append(rvs2) 15# Create instance of K-Medoids algorithm.
16kmedoids_instance = kmedoids(sample, initial_medoids)
17# Run cluster analysis and obtain results.
18kmedoids_instance.process()
19centoids = kmedoids_instance.get_medoids()
20clusters = kmedoids_instance.get_clusters()
21# Show allocated clusters.
22for cluster_id in range(len(clusters)):
23 for index in clusters[cluster_id]:
24 if(cluster_id == 0):
25 plt.plot(sample[index][0], sample[index][1], 'ro')
26 print(sample[index][0])
27 else:
28 plt.plot(sample[index][0], sample[index][1], 'bo')
16 29
17matrix = np.empty((len(dist),len(dist))) 30plt.plot(sample[centoids[0]][0], sample[centoids[0]][1], 'bo')
18 31# plt.plot(sample[centoids[1]][0], sample[centoids[1]][1], 'ro')
19for i in range(len(dist)): 32plt.show() \ No newline at end of file
20 matrix[i,i] = 0
21 for j in range(i+1, len(dist)):
22 value, p = stats.ks_2samp(dist[i], dist[j])
23 matrix[i, j] = value
24 matrix[j, i] = value
25
26embedding = MDS(n_components=2, dissimilarity='precomputed')
27trans = embedding.fit_transform(X=matrix)
28x = (trans[:100,0]).tolist()
29y = (trans[:100,1]).tolist()
30
31x2 = (trans[100:,0]).tolist()
32y2 = (trans[100:,1]).tolist()
33plt.plot(x, y, 'yo')
34plt.plot(x2, y2, 'ro')
35plt.show()