Write a cell array to a .csv file
Show older comments
Hi,
I have a cell array "newdata" as shown below.
'01/01/2001' 0
'02/01/2001' 0
'03/01/2001' 0
'04/01/2001' 0
'05/01/2001' 14.1000000000000
'06/01/2001' 0
'07/01/2001' 0
I need to write this to a .csv file. So, I used the following code to do that.
csvwrite('110416.csv',newdata(:,1:2));
But, I got the following error.
Error using dlmwrite (line 112)
The input cell array cannot be converted to a matrix.
Error in csvwrite (line 42)
dlmwrite(filename, m, ',', r, c);
Can somebody suggest me a different way or how to correct this.?
Thanks in advance.
Answers (3)
Geoff Hayes
on 25 Nov 2014
2 votes
Damith - see Export Cell Array to Text File which uses fprintf to write each row of your cell array to file.
4 Comments
Damith
on 25 Nov 2014
Geoff Hayes
on 25 Nov 2014
You can still do that - csv or text file it is more or less the same. For example,
fid = fopen('110416.csv','wt');
if fid>0
for k=1:size(newdata,1)
fprintf(fid,'%s,%f\n',newdata{k,:});
end
fclose(fid);
end
Damith
on 25 Nov 2014
Akhil Narayanan
on 14 Jan 2022
thanks
Walter Roberson
on 14 Jan 2022
1 vote
These days, use writecell()
D. benoy
on 26 Nov 2014
Hi,
If you have EXCEL on your computer you can do the following instead
xlswrite('110416.xls',y);
Open 110416.xls and save it as a csv file.
3 Comments
Damith
on 26 Nov 2014
Preston Dial
on 25 Jul 2018
I am getting the same error from the xlswrite function for one of my projects
Devansh Deepak Patel
on 12 Aug 2020
me too
Categories
Find more on Text Files in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!