matlab - 可写Matlab(附加表?)

标签 matlab class built-in

如果您有一个表类别“T”

T=

Var1      Var2      Var3    Var4 
____    ________    ____    _____

M       45    45    'NY'    true 
F       41    32    'CA'    false
M       40    34    'MA'    false

并且您想将值写入可以使用的文件中,例如:

writetable(T,'myData.txt','Delimiter', ...)

但这将删除 myData.txt 中的所有信息。我想知道是否有表的附加功能,或者某种方式写入而不删除 myData.txt 的旧内容。

所以,图片:

type myData.txt

你好

writetable(T, ...)

type myData.txt

你好

变量1 变量2 变量3 变量4

M       45    45    'NY'    true 
F       41    32    'CA'    false
M       40    34    'MA'    false

最佳答案

一种方法是使用 fopen() 写入文件。创建表:

LastName = {'Smith';'Johnson';'Williams';'Jones';'Brown'};
Age = [38;43;38;40;49];
Height = [71;69;64;67;64];
Weight = [176;163;131;133;119];
T = table(LastName,Age,Height,Weight)

写入文件:

writetable(T,'table.csv')

再次打开文件:

fid = fopen('table.csv','a')

第二次写出表格:

fmt = varfun(@(x) class(x),T,'OutputFormat','cell');
fmt(strcmp(fmt,'double'))={'%g'};
fmt(strcmp(fmt,'cell'))={'%s'};
fmt=[strjoin(fmt,',') '\n']
for r=1:size(T,1)
  x=table2cell(T(r,:));
  fprintf(fid,fmt,x{:});
end
fclose(fid);

关于matlab - 可写Matlab(附加表?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28043376/

相关文章:

matlab - 在不同大小的不同单元格数组中查找重复值的最快方法

python - 实现在属性更新时调用外部函数的 Python 类的正确方法

Python 无法调用函数

python - 什么样的不可见参数从内置函数传递到你的函数,如何找出

gcc - 独立的GCC和内置功能

python - Numpy 数组,数据必须是一维的

matlab - 此代码的改进范围

c++ - 复制一个对象并使两者共享一个成员变量(C++)

java - 可以在 Fortran、C 或 Java 中重新定义像 sin() 这样的函数吗?

Matlab:如何将不同的颜色图/颜色条分配给同一图中的不同表面