Mask the matrix

Ben Abbott bpabbott at mac.com
Tue May 12 09:53:14 CDT 2009


 
On Tuesday, May 12, 2009, at 10:48AM, "James Sherman Jr." <shermanj at umd.edu> wrote:

>On Tue, May 12, 2009 at 10:35 AM, Xin Dong <xdong at cse.unl.edu> wrote:
>
>> Hi,
>>
>> I have a program that generates a two row matrix with zero elements. I
>> wanna extract out the columns with elements in both rows are non-zero. For
>> example, if the matrix is
>> a = [ 1 0 2 3 4; 2 1 0 0 4],
>> I wanna get
>> b = [1 4; 2 4].
>> How can I use octave to do this?
>>
>> Thanks,
>> Xin
>I'd so something like:
>
>c = all(a~=0,1);
>d = a([c;c]);
>b = reshape(d, 2, []);
>
>I think this will do what you want.
>

or ...

    b = a(:,min(a)!=0);

Ben



More information about the Help-octave mailing list