How to find the minimum difference between the 3 elements of a vector in app designer?
    8 ビュー (過去 30 日間)
  
       古いコメントを表示
    
I need to group the elements of a matrix 3 by 3 with the minimum difference between them. I found something like that: min(min(abs(X(1)-X2))), but l have 3 values.
6 件のコメント
  Dyuman Joshi
      
      
 2023 年 12 月 11 日
				
      編集済み: Dyuman Joshi
      
      
 2023 年 12 月 11 日
  
			I am asking what logic did you follow to get that output from that particular input.
How do you define minimum difference?
採用された回答
  DGM
      
      
 2023 年 12 月 12 日
        I take this to mean the three elements of X with the smallest extreme spread.  I don't see that pdist2() would work for that.
This might work, so long as the number of elements in X stays small.
X = randi([0 99],3,3)
C = nchoosek(X(:),3);
Crange = range(C,2);
row = Crange == min(Crange);
C(row,:)
From what's given, there's no reason to think that there's a unique minimum combination.  The first example @Dyuman Joshi gave is a good demonstration.  The example I gave will return all combinations with the same minimum spread.
7 件のコメント
  DGM
      
      
 2023 年 12 月 13 日
				I still don't understand.  How does a 3x3 array have 12 elements, and where does 4 come in?
Are you trying to find the minimal combinations left in X after removing each minimal combination?
その他の回答 (1 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



