Error using vertcat(out of memory)
2 ビュー (過去 30 日間)
古いコメントを表示
hi,
I want to concatenate two matrix , A is 64 * 9000 and B is 49 * 9000( B is in "For" loop, and in each Loop , B(matrix)'s Row changes,but the columns is fixed(9000))
so i use this code for concatenate them: C=[A;B];
but , in 150th loop , i saw this Error: " Error using vertcat out of memory . Type Help Memory for Your option."
i can't solve it, can anybody help me ? (my installed memory(RAM) is 6 gig)
0 件のコメント
回答 (2 件)
Orion
2014 年 11 月 10 日
編集済み: Orion
2014 年 11 月 10 日
Hi,
you're saying that the numbers of rows of B changes at each iteration.
so B increases at each iteration ? and A ?
what is it size when it crashes ? use disp(size(B)) in the loop, so you will see the result in the command window.
also, type whos to see the size of your data in memory.
With data of this size, if you're not careful, you will easily be out of memory.
4 件のコメント
Orion
2014 年 11 月 11 日
According to what you say, you will never have sufficient memory to store your data.
You will be forced to code differently.
I ask again : Do you need every component of B ?
It's weird to have data of this size in an algorithm.
try to simplify it.
Adam
2014 年 11 月 11 日
So you are concatenating B with A 150 times (and more)?
Is that really what you want to do? If your loop is of size 9000 is that not just one row of B chaanging each time in the loop and you want a single concatenation of
[A; B]
after the loop has completed, not every time round the loop?
参考
カテゴリ
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!