K-mean Clustering

9 visualizzazioni (ultimi 30 giorni)
MAT NIZAM UTI
MAT NIZAM UTI il 9 Nov 2021
Modificato: MAT NIZAM UTI il 18 Nov 2021
Hi Everyone, can someone help me on how to use the K-mean clustering or perhaps share with me the suitable coding use to cluster wind speed data. I hava wind speed data in the form of Latitude, Longitude, Wind Speed. I want to cluster the data into 3 groups.

Risposta accettata

Image Analyst
Image Analyst il 12 Nov 2021
If you have all the lat and lon values, then just put each into kmeans separately:
numColumns = 26; % Or however many columns you know there to be.
[xIndexes, xCentroids] = kmeans(lon, numColumns);
numRows = 50; % Or however many rows you know there to be.
[yIndexes, yCentroids] = kmeans(lat, numRows);
The values of the columns (x or longitude values) will be in xCentroids.
The values of the rows (y or lat values) will be in yCentroids.
  16 Commenti
Image Analyst
Image Analyst il 18 Nov 2021
So can we just take the first 2314 values and ignore the extra lat?
MAT NIZAM UTI
MAT NIZAM UTI il 18 Nov 2021
Modificato: MAT NIZAM UTI il 18 Nov 2021
Sure..well I dont really know how the matlab works, because after comparing the actual values and the after read values, both lons and speeds were different with the actual data.
https://drive.google.com/drive/folders/1tFOl0ZHQo4XzB-VGvi-LBLPg_lERG98u (this is my very actual data) Column C until LB is the wind speeds values.

Accedi per commentare.

Più risposte (1)

H R
H R il 9 Nov 2021
If your data is in a matrix format X, then you can use the following:
[idx,C] = kmeans(X,3,'Distance','cityblock','Replicates',5);
  6 Commenti
H R
H R il 12 Nov 2021
Yes, every thing is possible (even using 1D data) , but you have to finally check what you are looking for from the clustering task and check if the outcome makes sense to you.
MAT NIZAM UTI
MAT NIZAM UTI il 14 Nov 2021
Modificato: Image Analyst il 14 Nov 2021
Here is my coding, and I have an error on it
Error using horzcat
Dimensions of matrices being concatenated are not consistent.
Error in k_mean (line 7)
idx1=kmeans([X1 Y1],numClusters,'Replicates',5);
This is the code:
k = xlsread('WIND_26YEARS.csv');
X1=(1:6943);
Y1=randn(6943,1);
numClusters=3;
idx1=kmeans([X1 Y1],numClusters,'Replicates',5);
pointclust=repmat(idx1,1,numClusters)==repmat(1:numClusters,numel(idx1),1);
colors=hsv(numClusters);
for j=1:numClusters,
plot(X1(pointclust(:,j)),Y1(pointclust(:,j)),'Color',colors(j,:));
if j==1,
hold on;
end;
end,
hold off;

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by