Hello,
I have a problem with a matlab code. The problem is that I want to make o txt file with my results. I am using the command "writetable" nut there is a problem with matrixes. In the picture I show you the format of the matrices.cr.png
How can I convert cell to double In order to make this code?
P.S. I ve tried commands : cell2table,table2array, but it doesn't works...
Thank you

3 Kommentare

madhan ravi
madhan ravi am 1 Aug. 2019
Bearbeitet: madhan ravi am 1 Aug. 2019
please attach your data as .mat file
Eva-Maria Weiss
Eva-Maria Weiss am 1 Aug. 2019
For converting cell arras to double array, you could use cell2mat:
Luna
Luna am 1 Aug. 2019
To answer this, we must see what is inside the cell array. Could you please share it?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 2 Aug. 2019

1 Stimme

for ii = 1:numel(CT)
if ~iscell(CT{ii})
CT{ii} = num2cell(CT{ii});
end
end
T = cell2table(cat(2,CT{:}));
writetable(T,'youtxtfile.txt')

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 1 Aug. 2019

0 Stimmen

Nc = [CT(1), num2cell(CT{2}), CT(3), num2cell(CT{4}), num2cell(CT{5})];
writecell(Nc, filename)
This requires r2019a or later, but we know that you have that because writematrix is introduced at the same time.

9 Kommentare

Ivan Mich
Ivan Mich am 1 Aug. 2019
I used this command you suggested me, but unfortunately it doesn't works. The command wimndow wrote me these:
Error in test_v2_pro (line 85)
Nc = [CT(1), num2cell(CT{2}), CT(3), num2cell(CT{4}), num2cell(CT{5})];
Why ?
Ivan Mich
Ivan Mich am 1 Aug. 2019
Bearbeitet: Ivan Mich am 1 Aug. 2019
Also I've tried the command:
Nc = [CT(1,1), num2cell(CT{2,1}), CT(3,1), num2cell(CT{4,1}), num2cell(CT{5,1})];
writecell(Nc, 'filename.txt')
And it doesn't work too...
The command window showed me :
Error in test_v2_pro (line 85)
Nc = [CT(1,1), num2cell(CT{2,1}), CT(3,1), num2cell(CT{4,1}), num2cell(CT{5,1})];
ALSO , I ve tried these command :
Error in test_v2_pro (line 85)
Nc = [CT(1:1), num2cell(CT{2:1}), CT(3:1), num2cell(CT{4:1}), num2cell(CT{5:1})];
and it doesn't work too...
Do you have any idea why?
Thank you
madhan ravi
madhan ravi am 1 Aug. 2019
Bearbeitet: madhan ravi am 1 Aug. 2019
Could you attach your file as .mat ? , asking it for the second time.
Ivan Mich
Ivan Mich am 1 Aug. 2019
I am sorry but i can't share this file..
Walter Roberson
Walter Roberson am 1 Aug. 2019
We need the full error message showing what matlab thinks is wrong.
Ivan Mich
Ivan Mich am 1 Aug. 2019
Error in test_v2_pro (line 85) Nc = [CT(1:1), num2cell(CT{2:1}), CT(3:1), num2cell(CT{4:1}), num2cell(CT{5:1})];
This is the full error message that command Window shows. This message is the same when I use the previous command I refer. Command Window does not shows me something else...
At the command line give the command
dbstop if error
and then run the code. When the problem occurs, try these and see which ones give an error and show us the error:
Nc = [CT(1), num2cell(CT{2}), CT(3), num2cell(CT{4}), num2cell(CT{5})]
Nc = [CT(1), num2cell(CT{2}), CT(3), num2cell(CT{4})]
Nc = [CT(1), num2cell(CT{2}), CT(3)]
Nc = [CT(1), num2cell(CT{2})]
Nc = [CT(1)]
i gave the command you suggested me , dbstop if error, and command window show me this message :
Error in test_v2_pro (line 85) Nc = [CT(1:1), num2cell(CT{2:1}), CT(3:1), num2cell(CT{4:1}), num2cell(CT{5:1})];
The same message is shown when i am trying to use the commands:
Nc = [CT(1), num2cell(CT{2}), CT(3), num2cell(CT{4}), num2cell(CT{5})]
Nc = [CT(1), num2cell(CT{2}), CT(3), num2cell(CT{4})]
Nc = [CT(1), num2cell(CT{2}), CT(3)]
Nc = [CT(1), num2cell(CT{2})]
Nc = [CT(1)]
Actually, I have to notice that my data are coming from .csv files. I don't know if this could help you to give some advice...
It is not possible to get that error from
Nc = [CT(1)]
But in the meantime, please tell use more about CT{3} which your display indicates is a cell array.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by