if i have some matrix how can i do this operation on it ?
1 次查看(过去 30 天)
显示 更早的评论
if i have matrix where the size of it is (2,5) and i have a matrix
a = [ 1 3
3 1 ]
* where a matrix show how many of ones will be in the f matrix and between these group of ones just one zero
how to generate matrix like this
f = [ 1 0 1 1 1
1 1 1 0 1 ]
0 个评论
采纳的回答
Azzi Abdelmalek
2016-4-29
This is not the best way, but it works
a = [ 1 3
3 1 ]
b=arrayfun(@(x) [0 ones(1,x)],a,'un',0)
c=arrayfun(@(x) cell2mat(b(x,:)),(1:size(a,1))','un',0)
d=cell2mat(c);
out=d(:,2:end)
2 个评论
Walter Roberson
2016-4-29
You asked that question already, in http://www.mathworks.com/matlabcentral/answers/281767-how-to-fix-this-code-and-give-the-right-answer .
You duplicate your questions too much, which is a pain to clean up after. The volunteers can either spend time answering code or they can spend time cleaning up questions, but they don't have time to do both.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!