compensate vector into same length
1 次查看(过去 30 天)
显示 更早的评论
if we have multiple vectors, A,B,C. Each of them has different length. How can we compensate them by NaN into same length and store them as a matrix.
0 个评论
采纳的回答
Stephen23
2022-12-31
The simplest approach is to download the function PADCAT() here:
and use it like this:
M = padcat(A,B,C)
3 个评论
Stephen23
2022-12-31
编辑:Stephen23
2022-12-31
"For example, I have a loop for 4 times, within each loop I will get a vector, then I need to compensate the vector with NaN within that loop; then in next loop I will have new vector to compensate."
How will you know what length to pad to, if you do not have all of the vectors?
I suspect that you could simply store all of the vectors in a cell array, and then supply them to PADCAT after the loop. This would likely be the simplest approach:
N = 4;
C = cell(1,N); % preallocate!
for k = 1:N
V = your code that generates a vector;
C{k} = V;
end
M = padcat(C{:})
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!