how to find the row name which corresponds to a certain value in a table
6 ビュー (過去 30 日間)
古いコメントを表示
hello i named the rows of a table as follows
MT={'A','B','C','D','E'};
the other elements in the table are [S,Rd,Ratio,doi,kd] i want to display the MT at max(s), this is the code i used
for i=1:x
kd(i)=input('perm of damaged zone: ');
doi(i)=input('depth of invasion: ');
rd(i)=doi(i)+rw';
s(i)=((ko/kd(i))-1)*(log(rd(i)/rw))';
Rd=[rd]';
S=[s]';
ji=log(re/rw);
jd(i)=log(re/rw);
jo(i)=(log(re/rw))+(s(i));
R(i)=jd(i)/jo(i);
Ratio=[R]';
table(S,Rd,Ratio,doi,kd,'RowName',MT)
0 件のコメント
回答 (1 件)
Guillaume
2016 年 3 月 18 日
t = table(S,Rd,Ratio,doi,kd,'RowName',MT);
[~, maxrow] = max(t.S); %get row index of max
maxrowname = t.Properties.RowNames(maxrow) %get string corresponding to row index
2 件のコメント
Guillaume
2016 年 3 月 18 日
It means ignore this output. You don't care about the value of the max (1st output), just its position (2nd output).
参考
カテゴリ
Help Center および File Exchange で Numeric Types についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!