【问题标题】:Save matlab output in textfile将matlab输出保存在文本文件中
【发布时间】:2013-08-23 10:47:09
【问题描述】:

我在 matlab 中有两个带有 n 个条目的向量,我们称它们为 x 和 y。

现在我想创建一个具有以下结构的文本文件: 您有两列(一列用于 x 值,一列用于 y 值),然后我想得到:

    x(1)  y(1)
    x(2)  y(2)
    x(3)  y(3)

等等。

这里有人知道怎么做吗?

【问题讨论】:

    标签: matlab text file-io output


    【解决方案1】:

    您可以在 for 循环中使用 fprintf 执行此操作:

    x=[0 1 2 3];
    y=[4 5 6 7];
    file = 'test.txt';
    fh = fopen(file, 'wb');
    
    if( length(x) ~= length(y) )
        error('x and y must have the same length');
    end
    
    for k = 1:length(x)
        fprintf(fh, '%f %f\n', x(k), y(k));
    end
    
    fclose(fh);
    

    我假设您想保存浮点数。要保存整数,请使用 %d 而不是 %f

    【讨论】:

    • 今天是 fprintf 日? :o
    【解决方案2】:

    这是一种无需循环的方法。我使用了逗号分隔符,但如果您尝试help dlmwrite,您会发现您可以轻松地将其转换为空格。

    x = [1; 2; 3]; 
    y = [4; 5; 6];
    dlmwrite('example.txt',[x y],'newline','pc')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-04
      • 2015-10-01
      • 1970-01-01
      • 2010-12-27
      相关资源
      最近更新 更多