У меня есть 3 текстовых файла s1.txt, s2.txt, s3.txt
. Каждый из них имеет одинаковый формат и количество данных. Я хочу объединить только второй столбец каждого из 3 файлов в один файл. Прежде чем объединить данные, я отсортировал их по 1-му столбцу:
Несортированный файл:
s1.txt s2.txt s3.txt
1 23 2 33 3 22
4 32 4 32 2 11
5 22 1 10 5 28
2 55 8 11 7 11
Сортированный файл:
s1.txt s2.txt s3.txt
1 23 1 10 2 11
2 55 2 33 3 22
4 32 4 32 5 28
5 22 8 11 7 11
Вот код, который у меня есть:
BaseFile ='s'
n=3
fid=fopen('RT.txt','w');
for i=1:n
%Open each file consecutively
d(i)=fopen([BaseFile num2str(i)'.txt']);
%read data from file
A=textscan(d(i),'%f%f')
a=A{1}
b=A{2}
ab=[a,b];
%sort the data according to the 1st column
B=sortrows(ab,1);
%delete the 1st column after being sorted
B(:,1)=[]
%write to a new file
fprintf(fid,'%d\n',B');
%close (d(i));
end
fclose(fid);
Как получить вывод в новом текстовом файле в этом формате?
23 10 11
55 33 22
32 32 28
22 11 11
вместо этого формата?
23
55
32
22
10
33
32
11
11
22
28
11