Got an error when using cell2csv in Matlab 2014b version
6 views (last 30 days)
Show older comments
The error message is the following
Undefined function 'cell2csv' for input arguments of type 'cell'.
My Matlab code: cell2csv(fileName, aCellInstance);
Can you help to see if I used it in the wrong way or the function is not available in 2014b.
Thanks!
Simon
0 Comments
Answers (5)
Konstantinos Sofos
on 24 Feb 2015
Hi Simon, As Abhishek mentioned cell2csv is not a MATLAB built in function. You can use something from MATLAB file exchange e.g.
function cell2csv(filename,cellArray,delimiter)
% Writes cell array content into a *.csv file.
%
% CELL2CSV(filename,cellArray,delimiter)
%
% filename = Name of the file to save. [ i.e. 'text.csv' ]
% cellarray = Name of the Cell Array where the data is in
% delimiter = seperating sign, normally:',' (it's default)
%
% by Sylvain Fiedler, KA, 2004
% modified by Rob Kohr, Rutgers, 2005 - changed to english and fixed delimiter
if nargin<3
delimiter = ',';
end
datei = fopen(filename,'w'); for z=1:size(cellArray,1) for s=1:size(cellArray,2)
var = eval(['cellArray{z,s}']);
if size(var,1) == 0
var = '';
end
if isnumeric(var) == 1
var = num2str(var);
end
fprintf(datei,var);
if s ~= size(cellArray,2)
fprintf(datei,[delimiter]);
end
end
fprintf(datei,'\n');
end
fclose(datei);
Example:
>> A = rand(5); >> B = num2cell(A); >> cell2csv('dummy.csv',B)
0 Comments
Konstantinos Sofos
on 26 Feb 2015
Hi Simon,
You could use another delimiter e.g. semicolon (";").
Initially it was to be a comma (CSV-Comma separated values), however as the comma is often used as a decimal point it wouldn't be such good separator, hence others like the semicolon.
i prefer ; since it causes less problems with decimal points, digit grouping and does not appear in much text. In windows it is dependent on the "Regional and Language Options".
Regards
0 Comments
See Also
Categories
Find more on Cell Arrays in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!