clear all close all clc %% % Lettura della matrice quadrata % Controllo per verificare se la matrice è quadrata load data_clustering [m, n] = size(A); if m ~= n error('La matrice non è quadrata.'); end % Vettorizzazione della matrice A_vector = A(:); % Trasforma la matrice in un vettore colonna % Clustering k-means con 5 cluster num_clusters = 5; [idx, ~] = kmeans(double(A_vector), num_clusters,'Replicates', 10, 'Distance', 'cityblock'); % Ricostruzione della matrice con i valori del cluster A_clustered = reshape(idx, m, n); % Visualizzazione della matrice originale e della matrice clusterizzata disp('Matrice originale:'); disp(A); disp('Matrice con i valori del cluster:'); disp(A_clustered); % Visualizzazione con immagini per facilitare il confronto figure; subplot(1,2,1); imagesc(A); title('Matrice originale'); colorbar; subplot(1,2,2); imagesc(A_clustered); colormap jet title('Matrice clusterizzata'); colorbar;