Creating a non-square diagonal matrix
显示 更早的评论
Hi there,
I have a vector A that contains 2240 elements and I wanted to create a non-square diagonal matrix out if (B) that has the following dim: (94,037,2240),
I cant really use the diag function in matlab beause that gives me a square diagonal matrix,
Could you please help me with this issue?
5 个评论
James Tursa
2020-12-17
What is the rule for creating a 94x37x2240 array from a 2240 element vector?
Nikan Fakhari
2020-12-17
Nikan Fakhari
2020-12-17
Nikan Fakhari
2020-12-17
James Tursa
2020-12-17
OK, 94037x2240. But what is the rule?
回答(2 个)
s1 = 94037;
s2 = 2240;
v = rand(1, s2); % Test data
M = zeros(s1, s2);
M(1:s1+1:s1*s2) = v; % Linear indexing
Or if s2 > s1:
s1 = 2;
s2 = 4;
v = rand(1, s1); % Test data
M = zeros(s1, s2);
M(1:s1+1:s1*s1) = v; % Linear indexing
类别
在 帮助中心 和 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!