How do I save a cell array that has both text and numeric data?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a data set where I would like to extract alphanumeric data to a text file. E.g. here is one 1x6 cell array:
37 0 240 0.436 'cat dog mouse' 10
I would like to save this data into a text file but I cannot do that with the fprintf command since it contains alphanumeric data. How do I do this?
0 commentaires
Réponse acceptée
dpb
le 15 Nov 2016
>> fmt=[repmat('%5d',1,3) '%8.4f ' '%s %5d\n'];
>> fprintf(fmt,c{:})
7 0 240 0.4360 cat dog mouse 10
>>
Plus de réponses (1)
Image Analyst
le 15 Nov 2016
Here's one way:
ca = {37, 0, 240, 0.436, 'cat dog mouse', 10}
fid = open(filename, 'wt'); % File on disk
% fid = 1; % Command window.
fprintf(fid, '%f, %f, %f, %f, %s, %d\n', ca{:});
close(fid);
4 commentaires
Image Analyst
le 16 Nov 2016
I don't know. You could always try it. I think they recommend textscan() now instead of textread(). Or you could use fgetl() to get just one line and then use textscan() or sscanf() on just that line.
You might also be able to use importdata() or readtable(). See which function lets you read it in with the least fuss.
Voir également
Catégories
En savoir plus sur Data Import and Export dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!