substituting a column into a 3D matrix
1 次查看(过去 30 天)
显示 更早的评论
I have a matrix R = zeros(4,5,3) and I want to make the last column of each matrix a different number. such that given C is a vector
for n = 1: end R(:,end, n) = C(n)
I managed a solution where I have a column vector A which if I could substitute into R(:, end, :), but it says mismatch dimensions.
essentially, I want to substitute a column vector into the columns of a 3D matrix R without using a for loop.
采纳的回答
Fangjun Jiang
2011-8-20
It's not clear when you mention "last column" for a 3-D matrix. Hope you mean one of the following two cases.
R=zeros(4,5,3);
A=1:20;
R(:,:,3)=reshape(A,size(R,1),size(R,2))
R=zeros(4,5,3);
A=1:12;
R(:,5,:)=reshape(A,size(R,1),size(R,3))
更多回答(1 个)
Jan
2011-8-21
R = zeros(4,5,3);
A = [1, 2, 3];
R(:, end, :) = reshape(repmat(A, 4, 1), [4, 1, 3]);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!