# Zero a cell matrix with varying number of zeros

6 views (last 30 days)

Show older comments

Hi,

I have a cell matrix, C, that's n x n, and an array A of size n x 1. The entries of array A dictate the no. of column of zeros in the matrix M.

i.e. M1 has a dimension 6 x A(1), M2 has a dimension 6 x A(2)

Given an index i, what I wish to do is the following,

Column i of C is filled with matrix Mi of dimension 6xA(i). So all n entries in column i are replaced with a matrix of zeros.

I know the following code

C(:,:) = {zeros(3,3)}

will give me zeros eveyrwhere, I want to leverage similar syntax to solve my problem. Avoiding the use of for loops.

Thank you.

##### 0 Comments

### Answers (1)

ME
on 30 Oct 2019

I'm not 100% sure I follow, but as I understand you want to take some list of columns and turn all elements in that column to zeros?

If so then you could use something like:

C(:,cols) = 0

where cols is an array containing the indices of the columns to be zeroed. For example setting cols = [1 3] would put zeros in the first and thrid columns.

If that's not what you meant then please could you explain some more?

##### 6 Comments

ME
on 31 Oct 2019

### See Also

### Categories

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!