for loop concatenation for datasets
9 ビュー (過去 30 日間)
古いコメントを表示
I am working on a code that combines datasets of equal sizes.
I want to create a loop that concatenates the datasets horizontally. In the loop below ds_temp will be recurrring datasets (200x2) that will need to be combined to form the final dataset ds. Can you please help?
ds = ds_temp;
ds = horzcat(ds,ds);
end
2 件のコメント
Sven
2012 年 2 月 25 日
Joe, the above code (first 2 lines) does not error. Can you clarify your actual problem? Is it that you're not sure of the syntax for making a loop?
採用された回答
Sven
2012 年 3 月 3 日
Hi Joe,
The following loop:
- makes some random data (20-by-2)
- initialises a variable called allData to start as 20-by-2
- concatenates that random data onto allData, 5 times.
randomData = rand(20,2);
allData = randomData;
for i = 1:5
dataToAppend = randomData + i;
allData = [allData dataToAppend];
% allData = cat(2, allData, dataToAppend);
% allData = horzcat(allData, dataToAppend);
end
Note the two lines commented out. They do the exact same thing, just with slightly different syntax.
The end result will be a 20-by-12 matrix, because allData started at 20-by-2, and had 2 columns added to it 5 times.
1 件のコメント
Johanna
2018 年 2 月 28 日
Um, might be just me, but this way you are also adding the value of i to randomdata on each loop? Surely that's not desired...
その他の回答 (1 件)
Yesid Goyes
2013 年 6 月 10 日
How do I automatically concatenate several pages of the same multidimensional array.?
if true
% cc=cat(1,xyz(:,:,1),xyz(:,:,2),xyz(:,:,3),...,xyz(:,:,n));
end
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!