## Assignment support in Sparse Matrix

### Tashu Bar (view profile)

on 17 Mar 2019
Latest activity Closed by John D'Errico

on 23 Mar 2019

### John D'Errico (view profile)

A sparse matrix is a large matrix with almost all elements of the same value (typically zero). The normal representation of a sparse matrix takes up lots of memory when the useful information can be captured with much less. A possible way to represent a sparse matrix is with a cell vector whose first element is a 2-element vector representing the size of the sparse matrix. The second element is a scalar specifying the default value of the sparse matrix. Each successive element of the cell vector is a 3-element vector representing one element of the sparse matrix that has a value other than the default. The three elements are the row index, the column index and the actual value. Write a function called sparse2matrix that takes a single input of a cell vector as defined above and returns the output argument called matrix, the matrix in its traditional form. Consider the following run:
Can somebody guide , have tried but was not able to understand how to attempt this problem.
Help is appreciated

paul mary

### paul mary (view profile)

on 21 Mar 2019
Hello, did you figure it out? I have same problem.

### John D'Errico (view profile)

on 17 Mar 2019
Edited by John D'Errico

### John D'Errico (view profile)

on 17 Mar 2019

Answers is not a homework service, so I will not do your homework for you. However, this question is one that I would argue is confusing or perhaps misleading - because it tries to make you think along the lines of sparse matrices, when no sparse matrix will be constructed. So, what is being requested?
1. Can you construct an nxm matrix that contains entirely a specific element? I.e., what is the default element? I hope you can do so by now. Is that not what you are told to do by the first two arguments?
2. Can you then replace specific elements of that matrix? Even if a simple loop is required, there is no reason why this is not simple to do. (You might need to know how to use varargin, since there are an unspecified number of input arguments here.)
So what is the problem? Is that not all you were told to do? Could you have done this in a more efficient way than a loop? Well, yes, by a judicious use of cell2mat and sub2ind. In fact, you could have used sparse itself, or you could use accumarray. Are those vectorized alternatives pertinent? No.
When you are given a question, look at what is required. Try to ignore the extraneous information that serves only to mislead you. This is a classicly important part of any problem solving effort.

John D'Errico

### John D'Errico (view profile)

on 23 Mar 2019
I am sorry. But you need to put in some effort in this. It is your homework, not mine. This is how you learn. Not by us giving you the answer you can then turn in, without any investment of thought.
You need to write one line of code to finish what I started. I even gave you a big hint in the form of the name of the vector RCV.