How can I find all the minimum values in table using a for-loop (which has Ties)?

3 ビュー (過去 30 日間)
Alfred Ofosu
Alfred Ofosu 2018 年 10 月 25 日
コメント済み: Alfred Ofosu 2018 年 10 月 25 日
Month = [01 02 03 04 05 06]';
Price = [99 58 94 58 87 91]';
Count = [10 30 20 27 05 04]';
T = table(Month, Price, Count)
m = 1
for i = 2:size(T,1)
if (T.Price(i) <= T.Price(m))
m = i;
end
end
T(m,'Month')
I have this code that finds the minimum price and tells me which month has the minimum price. However, the answer I am getting is only the 4th month, whereas there is a minimum in the 2nd month as well. How can I get this code to show me all months with the minimum price? How can I store the answer in a vertical vector? Thanks in advance!

採用された回答

madhan ravi
madhan ravi 2018 年 10 月 25 日
編集済み: madhan ravi 2018 年 10 月 25 日
Month = [01 02 03 04 05 06]';
Price = [99 58 94 58 87 91]';
Count = [10 30 20 27 05 04]';
A = Price
ind = 1;
minval = A(ind);
for i =1:numel(A)
if A(i) < minval
minval = A(i);
ind = i;
elseif A(i) == minval
ind = [ind i]; % add current index
end
end
Months_with_less_price = Month(ind)
  9 件のコメント
madhan ravi
madhan ravi 2018 年 10 月 25 日
Thank you @Kevin
madhan ravi
madhan ravi 2018 年 10 月 25 日
Anytime :) @Alfred

サインインしてコメントする。

その他の回答 (1 件)

Kevin Chng
Kevin Chng 2018 年 10 月 25 日
Month = [01 02 03 04 05 06]';
Price = [99 58 94 58 87 91]';
[minimun,idx]= min(Price);
MinMonth=Month(Price==minimun);
%minimun is your minimun value, % MinMonth is the month having minimun value
  4 件のコメント
Kevin Chng
Kevin Chng 2018 年 10 月 25 日
which indexing is the minimun number in the vector, however, it has limitation, which is only return one of the index of your minimum number.
In your case, it will return 2. you may ignore it and change to
minimun= min(Price);
Alfred Ofosu
Alfred Ofosu 2018 年 10 月 25 日
Thanks Kelvin for your time and help!

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by