Clear Filters
Clear Filters

Reshape Cell to Matrix

1 view (last 30 days)
Brian
Brian on 27 Dec 2011
So I'm having an issue adjusting this function to work with my actual dataset and it may be because I still don't understand the function quite right. (See answer to my original question here - http://www.mathworks.com/matlabcentral/answers/24527-reshape-cell-to-matrix)
My actual dataset format is as follows....
data = {'06/03/2011','00163T10'
'06/06/2011','00163T10'
'06/07/2011','00163T10'
'06/03/2011','ABCDEFGH'
'06/06/2011','ABCDEFGH'
'06/07/2011','ABCDEFGH'
'06/03/2011','ABCDWXYZ'
'06/06/2011','ABCDWXYZ'};
How would I go about using the arguments above with a dataset in this format. Ultimately, I am attempting to create a logical matrix of whether the ticker was in or out (1 or 0) for each given day using the accumarray function that Andrei began to help me with in the example posted above.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 28 Dec 2011
try this cod (small corrected, typo)
d1 = datenum(data(:,1),'mm/dd/yyyy');
[a1,c1,c1] = unique(d1);
[a2,c2,c2] = unique(data(:,2));
out1 = accumarray([c1,c2],ones(numel(c1),1),[max(c1),max(c2)],@(x){x},{0});
out = [{NaN}, a2'; cellstr(datestr(a1,'mm/dd/yyyy')),out1];
  2 Comments
Andrei Bobrov
Andrei Bobrov on 28 Dec 2011
small corrected
Brian
Brian on 30 Apr 2012
Sorry for being so slow to respond to this. You answer worked brilliantly and I have been using it for a while now.
Thanks Andrei,
Brian

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!