Indexing concatenated matricies without changing the order
1 回表示 (過去 30 日間)
古いコメントを表示
Elia
2014 年 10 月 30 日
コメント済み: Abhiram Bhanuprakash
2014 年 10 月 31 日
I'm attempting to index an outputted matricy from one function into a bigger matricy. My code at the moment:
% code
while j <= length(sec)
y=sec(j,:);
[max,~]=coros(y,thershold,x);
maxbox = [maxbox;max];
j=j+1;
end
The output max finds the largest values in a data set and outputs it as a matricy [x y]. Sample output:
if true
3 10
5 12
9 15
end
I then use maxbox = [maxbox;max]; to concatenate the matricies. I'd like to have each output correspond to the value of j it was found at. So that I know when they occur as well as where they occur. (j being time).
Sample of desired output:
if true
j 3 10
j 5 12
j 9 15
end
Before I concatenate it with the next matricy of values at j+1. Help is appreciated! Thanks.
0 件のコメント
採用された回答
Abhiram Bhanuprakash
2014 年 10 月 30 日
Hi Elia,
I guess you can use the 'ones' and 'size' functions to do this.
In your case, inside the 'while' loop, you can do:
maxbox = [maxbox;max];
temp = j*ones(size(maxbox,1),1);
maxbox = [temp maxbox];
j = j+1;
end
For documentation on 'ones' and 'size' functions, you can refer:
Hope this helps,
Cheers!
Abhiram
3 件のコメント
Image Analyst
2014 年 10 月 30 日
Please go ahead and give him "credit" by officially marking the answer as "Accepted". Then read this so you'll know how to format your posting properly.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Creating and Concatenating Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!