function [z, out] = ClusteringCost(m, X) % Calculate Distance Matrix d = pdist2(X,m); % Assign Clusters and Find Closest Distances [dmin, ind] = min(d, [], 2); % Sum of Within-Cluster Distance WCD = sum(dmin); z=WCD; out.d=d; out.dmin=dmin; out.ind=ind; out.WCD=WCD; end
kodunu çalıştırmaya çalışıyorum. pdist2 için Not enough input arguments. hatasını veriyor.
lütfen yardım.
3 Cevap
Yukrıda yazdığınız bir fonksiyon dosyası ve bu fonksiyonu tek başına çalıştıramazsınız. Çağırmanız gerekiyor:
Öncelikle yukarıdaki kodun bununduğu dosyanın fonksiyon ismi ile aynı olduğundan emin olun. (ClusteringCost.m şeklinde olmalı.)
Daha sonra bu fonksiyonu Komut Satırı (Command Window) üzerinden ClusteringCost(m, X) yazarak çağırabilirsiniz. Buradaki m ve X girdilerinizin tarafınızdan girilmesi gerekiyor. Sonuç olarak da fonksiyonumuz bize z ve out çıktılarını verecektir.
pdist2 için çağırdığınız X ve m ne cinste? İkisinin de matris (ya da aynı boyutta) olması lazım.