matlab的元胞数组导出,Matlab将元胞数组输出到txt或者dat文件中
Matlab将元胞数组输出到txt或者dat文件中
2018-11-24
原链接:http://cn.mathworks.com/help/matlab/import_export/write-to-delimited-data-files.html#br2ypq2-1
方法一:用fprint输出元胞数组
这个例子展示了怎么用fprint方法将元胞数组输出到TEXT 文件中。
创建一个元胞数组例子, 以便输出
C = {"Atkins",32,77.3,"M";"Cheng",30,99.8,"F";"Lam",31,80.2,"M"}
C = 3×4 cell array "Atkins" [32] [77.3000] "M" "Cheng" [30] [99.8000] "F" "Lam" [31] [80.2000] "M"
打开一个名字为celldata.dat的文件,将元宝数组内容输出到这个文件里.
fileID = fopen("celldata.dat","w");
fopen 返回一个文件标示fileid,通过这个标示,fprint将数组数据写入到文件中
构建字符串格式,"%s"表示字符串, "%d" 标示int数据, "%f"表示是浮点数据 ,每一个数据后换行("\n").
formatSpec = "%s %d %2.1f %s\n";
获得元胞数组的行和列值. 然后用fprint逐行将数据输出到文件中.
[nrows,ncols] = size(C);for row = 1:nrows fprintf(fileID,formatSpec,C{row,:}); // 注意此处不用{},而是()时,得到的字符串酱油引号,需注意end
输出完毕后,关闭文件流。
fclose(fileID);
查看文件内容
type celldata.dat
Atkins 32 77.3 MCheng 30 99.8 FLam 31 80.2 M
方法2:将元胞数组转换成Table
例子如下:
T = cell2table(C,"VariableNames",{"Name","Age","Result","Gender"});
将Table输出到TEXT中。
writetable(T,"tabledata.dat")
查看这个文件
type tabledata.dat
Name,Age,Result,GenderAtkins,32,77.3,MCheng,30,99.8,FLam,31,80.2,M
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。
http://www.pinlue.com/style/images/nopic.gif
更多推荐
所有评论(0)