Need help on FCM clustering
Afficher commentaires plus anciens
Is any one knows how to create 5 clusters by using FCM please. I've number of samples across number of genes, I need to cluster them into 5 clusters but I couldn't figure this out in matlab.
Réponses (5)
Walter Roberson
le 26 Nov 2011
fcm(YourData, 5)
Each row of YourData should be a single sample.
17 commentaires
Aiman Almazroey
le 26 Nov 2011
Walter Roberson
le 26 Nov 2011
Just pass your 306 x 249 array as the first argument to fcm, and pass 5 as the second argument. Have a look at that documentation link: the second argument is explicitly the number of clusters to return.
Aiman Almazroey
le 26 Nov 2011
Walter Roberson
le 27 Nov 2011
Unfortunately the size and interpretation of the partition matrix is not documented in the reference, and I do not have that toolbox to experiment with. For your data, what does size(U) come out as?
Aiman Almazroey
le 27 Nov 2011
Aiman Almazroey
le 27 Nov 2011
Walter Roberson
le 27 Nov 2011
For your data, what does size(U) come out as?
Sending me the files will not help as I do not have that toolbox.
I have some suspicions about what would be needed, but I need that information to confirm or disprove it.
Also note that you will not be able to plot the centroid of data with more than 3 dimensions, as the centroids would be 4 or higher dimensional.
Aiman Almazroey
le 27 Nov 2011
Walter Roberson
le 27 Nov 2011
Okay, that shape of U is consistent with what I expected.
numclust = size(U,1);
centroids = zeros(size(U));
maxU = max(U);
for K = 1 : numclust
index = find(U(K,:) == maxU,1); %only take one in case multiple
centroids(K,:) = U(index,:);
end
From there you have the problem of plotting the point in 306 dimensions, at centroids(K,:) for cluster #K. Plotting in more than 3 dimensions is... ummm, not encouraged... by MATLAB.
Aiman Almazroey
le 27 Nov 2011
Aiman Almazroey
le 28 Nov 2011
Walter Roberson
le 28 Nov 2011
It appears it is domestic duties day for me today.
Aiman Almazroey
le 28 Nov 2011
Walter Roberson
le 28 Nov 2011
My meaning is that I have been doing housework and grocery shopping and laundry and the like all day, and have not time to work this through. Recall that I do not have this toolbox: I am having to recreate the algorithm and outputs by mental modelling of what calculations might be useful and working out what problems those calculations might run in to.
Aiman Almazroey
le 28 Nov 2011
Aiman Almazroey
le 28 Nov 2011
Aiman Almazroey
le 29 Nov 2011
Aiman Almazroey
le 26 Nov 2011
0 votes
YASSER
le 27 Fév 2014
0 votes
hi I have the same your's problem, have you solved it please
2 commentaires
Aiman Almazroey
le 2 Mar 2014
YASSER
le 6 Mar 2014
AFTER I apply FCM function, I don'knowt how to extract images clusters for example I use [center,U,obj_fcn] = fcm(data,3) what I have to do to get the 3 groups of Image
soumi ghosh
le 9 Avr 2014
0 votes
Hello I have the same issue regarding fcm clusterinf of muti dimensional data set, need some help. Thank You
1 commentaire
Tamilalagan Natarajan
le 5 Sep 2014
Hi, I am trying to use FCM clustering. The only issue I still have is to identify the cluster center. If you have already found a solution, please can you share it.
nur shidah ahmad
le 8 Déc 2016
0 votes
Do you have any idea to auto clustering the data? Since, i don't want set the cluster number and i want it to auto cluster.
1 commentaire
Walter Roberson
le 8 Déc 2016
Yes, I know exactly how to get the best possible results in that situation: set the number of clusters to the number of unique points. Every cluster will then contain exactly one point (and any duplicates of it), which will always give you the best possible fitting, with no fitting error at all.
Catégories
En savoir plus sur Data Clustering dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!