Convert column into cells

12 visualizzazioni (ultimi 30 giorni)
Marcus Glover
Marcus Glover il 11 Lug 2016
Modificato: Walter Roberson il 12 Lug 2016
I have a large cell matrix with each cell as 1x1 as some entries are strings and other types of imported data. I need to multiply two columns together, as well as a scalar.
The multiplication of coulumns part I have done like this:
final(:,5)=cellfun(@times,final(:,3),final(:,4),'Uni',0);
But I can't seem to multiply by my scalar without running into problems. I can get the correct column of numbers I need like this:
numbers=cell2mat(final(:,5))./1000;
But now I can't convert this back into cells in order to put back into final(:,5). Conversion to cell from double is not possible. mat2cell seem to give me just one cell, but I need a column of individual cells (7108x1).
I have to have final(:,5) be these numbers, I don't care what type it is really as it will be exported as .xls.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 11 Lug 2016
final(:,5)=cellfun(@times,final(:,3),final(:,4),'Uni',0);
final(:,5)=cellfun(@(x) x/100,final(:,5),'un',0)

Più risposte (1)

Star Strider
Star Strider il 12 Lug 2016
If you need a column of individual cells from mat2cell. you have to give it a vector of ones.
For example:
v = ...; % Numeric Vector
cv = mat2cell(v, ones(7108,1), 1); % Cell Array

Categorie

Scopri di più su Data Type Conversion in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by