MATLAB: How to create rectangular checkerbox matrix

hankelrepmat

I need to create M as follows
M=[1 0 1 0;0 1 0 1;1 0 1 0 ]
where m=size(M,1);n=size(M,2)
My code should take m,n as input and its output should be M
Code 1: p=m+1; q=n+1 A=repmat(eye(2),p,q) M=A(1:m,1:n)
Code 2: colvector=[1 0 1 ] rowvector=[1 0 1 0] M=hankel(colvector,rowvector)
The problem with Code2 is that I don't know how to create colvector and rowvector in the first place
I have read the following thread and it talks about generating square matrices of such nature but I dont want to restrict M to be a square matrix

Best Answer

n=7;
m=5;
colvector=ones(1,m);
colvector(2:2:end)=0;
rowvector=ones(1,n);
rowvector(2:2:end)=0;
M=hankel(colvector,rowvector)