Info

此问题已关闭。 请重新打开它进行编辑或回答。

How to convert a vector into a matrix using reshape ,but what should be the size that should be specified?

1 次查看(过去 30 天)
I have converted a matrix A into a vector v and performed certain operations on the vector v and obtain a new vector G which have less number of elements compared to vector v.Now I want to convert this vector g into a matrix?But I dont know what must be the size that should be specified while using reshape.

回答(1 个)

James Tursa
James Tursa 2015-7-10
If it has fewer elements than originally, you can't directly reshape it into the same size original matrix. You could pad with 0's or NaN's if that works for your downstream processing. E.g.,
n = numel(v); % Number of original elements
G(end+1:n) = NaN; % Pad with NaN's
B = reshape(G,size(A)); % Reshape back to original size
If that doesn't work for you, then you will need to give us more details about what you will be doing with the reshaped G vector downstream in your code. Then we can offer suggestions.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by