Is it possible to change the matrix resizing setting/preferences?
1 view (last 30 days)
Show older comments
I've been trying to find some info on Matrix resizing settings for a few days now. I will try to describe my problem with a simple example.
1st iteration: The first row of the Matrix is filled with 3 elements.
2nd iteration: The second row of the matrix is filled with 4 elements. => The first row gets a new element "0".
Is it possible to set these resizing preferences using "NaN" elements?
Changes from "0" to "NaN" are not possible in my program because I could have "0" as my real Matrix element.
Thanks
3 Comments
DGM
on 29 Jun 2023
Avoid growing arrays like that. It's slow, and often leads to unexpected consequences. If you want a specific size, preallocate the output to a specific size. If it's not necessary to create a 2D array of padded variable-length vectors, just use a cell array instead of padding anything.
the cyclist
on 29 Jun 2023
Edited: the cyclist
on 29 Jun 2023
You are describing a solution to a problem. (Folks here have told you that the solution will not work.)
Instead, can you describe your problem?
It sounds like your problem is how to efficiently fill a matrix with vectors that are of unequal length (and pad the shorter vectors with zeros). Is that right?
Do you know the number of vectors ahead of time? Do you know the length of the longest vector that will be filled in?
Do you need the intermediate arrays along the way, or only the final array?
Answers (1)
Arya Chandan Reddy
on 30 Jun 2023
Hi I understand that you are trying to fill the intermediate indices with NaN instead of 0. However there is no direct solution to this, you can't change the preference and this way of filling your matrix is inefficient.
If you still have to achieve this someway then you can try to maintain the indices of real matrix 0s.
Hope it helps
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!