Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MATLAB组合数据_Matlab - Fatal编程技术网

MATLAB组合数据

MATLAB组合数据,matlab,Matlab,如何将两个数据列合并到一个文件中。这些代码应该生成一个有2列的新文件。虽然它产生了2列,但是数据不正确,因为a的所有数据都是先写入的,然后才是数据持续时间 fid=fopen('data1.txt'); A =textscan(fid,'%f%f%f%f%f%f%f%f%f%f%f%f'); % read a txt file in = cell2mat(A); %change to matrix fclose(fid); index = find(in(2:end,2) == in(1:e

如何将两个数据列合并到一个文件中。这些代码应该生成一个有2列的新文件。虽然它产生了2列,但是数据不正确,因为
a
的所有数据都是先写入的,然后才是数据
持续时间

fid=fopen('data1.txt');
A  =textscan(fid,'%f%f%f%f%f%f%f%f%f%f%f%f'); % read a txt file
in = cell2mat(A); %change to matrix
fclose(fid);

index = find(in(2:end,2) == in(1:end-1,2)) + 1; %condition 1
duration(index)= in(index,4) - in(index-1,4); 
a(index)=in(index,2);

fid = fopen('test.txt','wt');
format short g;
fprintf(fid,'%g\t%g\n',a,duration);
fclose(fid);
编辑: 输出格式如下所示-

318684 24    % 318684 I don't know where this number come from, not from the input
24     24    % this is the a output
24     24
1.1    1.08  % this is the duration output
2.1    0.77
预期输出为

24  1.1
24  1.08
24  2.1
24  0.77
1.3 1.8

您需要修复
fprintf
行:

fprintf(fid,'%g\t%g\n',[a(:),duration(:)]');

你能告诉我们这两列的格式吗?现在好了吗?如果没有,请显示
a
和`持续时间,并告诉我到底出了什么问题?